From b8c9fcfd70a5e5f28e32aa4a981c6728585e06ed Mon Sep 17 00:00:00 2001 From: Andrew Gaul Date: Thu, 17 Jan 2019 17:25:09 -0800 Subject: [PATCH] Avoid pass-by-value when not necessary This requires unnecessary memcpy. Found via clang-tidy. --- src/cache.cpp | 2 +- src/cache.h | 2 +- src/s3fs_util.cpp | 4 ++-- src/s3fs_util.h | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/cache.cpp b/src/cache.cpp index 53c5614..330e261 100644 --- a/src/cache.cpp +++ b/src/cache.cpp @@ -472,7 +472,7 @@ bool StatCache::AddNoObjectCache(string& key) return true; } -void StatCache::ChangeNoTruncateFlag(std::string key, bool no_truncate) +void StatCache::ChangeNoTruncateFlag(const std::string& key, bool no_truncate) { pthread_mutex_lock(&StatCache::stat_cache_lock); diff --git a/src/cache.h b/src/cache.h index 9d8eee2..253cd13 100644 --- a/src/cache.h +++ b/src/cache.h @@ -117,7 +117,7 @@ class StatCache bool AddStat(std::string& key, headers_t& meta, bool forcedir = false, bool no_truncate = false); // Change no truncate flag - void ChangeNoTruncateFlag(std::string key, bool no_truncate); + void ChangeNoTruncateFlag(const std::string& key, bool no_truncate); // Delete stat cache bool DelStat(const char* key); diff --git a/src/s3fs_util.cpp b/src/s3fs_util.cpp index e0392ef..99580a0 100644 --- a/src/s3fs_util.cpp +++ b/src/s3fs_util.cpp @@ -586,7 +586,7 @@ string mydirname(const char* path) return mydirname(string(path)); } -string mydirname(string path) +string mydirname(const string& path) { return string(dirname((char*)path.c_str())); } @@ -601,7 +601,7 @@ string mybasename(const char* path) return mybasename(string(path)); } -string mybasename(string path) +string mybasename(const string& path) { return string(basename((char*)path.c_str())); } diff --git a/src/s3fs_util.h b/src/s3fs_util.h index 61bddf2..1d279e1 100644 --- a/src/s3fs_util.h +++ b/src/s3fs_util.h @@ -109,9 +109,9 @@ std::string get_username(uid_t uid); int is_uid_include_group(uid_t uid, gid_t gid); std::string mydirname(const char* path); -std::string mydirname(std::string path); +std::string mydirname(const std::string& path); std::string mybasename(const char* path); -std::string mybasename(std::string path); +std::string mybasename(const std::string& path); int mkdirp(const std::string& path, mode_t mode); std::string get_exist_directory_path(const std::string& path); bool check_exist_dir_permission(const char* dirpath);