From 84b421d6ef220fdbb918634739328002ad7bd8ea Mon Sep 17 00:00:00 2001 From: Andrew Gaul Date: Wed, 23 Jan 2019 11:30:28 -0800 Subject: [PATCH] Prefer empty over size checks Found and fixed via clang-tidy. --- src/addhead.cpp | 6 +++--- src/curl.cpp | 26 +++++++++++++------------- src/fdcache.cpp | 26 +++++++++++++------------- src/s3fs.cpp | 30 +++++++++++++++--------------- 4 files changed, 44 insertions(+), 44 deletions(-) diff --git a/src/addhead.cpp b/src/addhead.cpp index 1885f2a..1df3533 100644 --- a/src/addhead.cpp +++ b/src/addhead.cpp @@ -89,7 +89,7 @@ bool AdditionalHeader::Load(const char* file) if('#' == line[0]){ continue; } - if(0 == line.size()){ + if(line.empty()){ continue; } // load a line @@ -108,8 +108,8 @@ bool AdditionalHeader::Load(const char* file) } // check it - if(0 == head.size()){ - if(0 == key.size()){ + if(head.empty()){ + if(key.empty()){ continue; } S3FS_PRN_ERR("file format error: %s key(suffix) is no HTTP header value.", key.c_str()); diff --git a/src/curl.cpp b/src/curl.cpp index bb96de3..00fb3c0 100644 --- a/src/curl.cpp +++ b/src/curl.cpp @@ -607,7 +607,7 @@ bool S3fsCurl::InitMimeType(const char* MimeFile) if(line[0]=='#'){ continue; } - if(line.size() == 0){ + if(line.empty()){ continue; } @@ -617,7 +617,7 @@ bool S3fsCurl::InitMimeType(const char* MimeFile) while(tmp){ string ext; tmp >> ext; - if(ext.size() == 0){ + if(ext.empty()){ continue; } S3fsCurl::mimeTypes[ext] = mimeType; @@ -704,7 +704,7 @@ bool S3fsCurl::LocateBundle(void) // See if environment variable CURL_CA_BUNDLE is set // if so, check it, if it is a good path, then set the // curl_ca_bundle variable to it - if(0 == S3fsCurl::curl_ca_bundle.size()){ + if(S3fsCurl::curl_ca_bundle.empty()){ char* CURL_CA_BUNDLE = getenv("CURL_CA_BUNDLE"); if(CURL_CA_BUNDLE != NULL) { // check for existence and readability of the file @@ -960,7 +960,7 @@ storage_class_t S3fsCurl::SetStorageClass(storage_class_t storage_class) bool S3fsCurl::PushbackSseKeys(string& onekey) { onekey = trim(onekey); - if(0 == onekey.size()){ + if(onekey.empty()){ return false; } if('#' == onekey[0]){ @@ -1043,7 +1043,7 @@ bool S3fsCurl::SetSseCKeys(const char* filepath) while(getline(ssefs, line)){ S3fsCurl::PushbackSseKeys(line); } - if(0 == S3fsCurl::sseckeys.size()){ + if(S3fsCurl::sseckeys.empty()){ S3FS_PRN_ERR("There is no SSE Key in file(%s).", filepath); return false; } @@ -1070,7 +1070,7 @@ bool S3fsCurl::FinalCheckSse(void) }else if(SSE_S3 == S3fsCurl::ssetype){ S3fsCurl::ssekmsid.erase(); }else if(SSE_C == S3fsCurl::ssetype){ - if(0 == S3fsCurl::sseckeys.size()){ + if(S3fsCurl::sseckeys.empty()){ S3FS_PRN_ERR("sse type is SSE-C, but there is no custom key."); return false; } @@ -1105,7 +1105,7 @@ bool S3fsCurl::LoadEnvSseCKeys(void) while(getline(fullkeys, onekey, ':')){ S3fsCurl::PushbackSseKeys(onekey); } - if(0 == S3fsCurl::sseckeys.size()){ + if(S3fsCurl::sseckeys.empty()){ S3FS_PRN_ERR("There is no SSE Key in environment(AWSSSECKEYS=%s).", envkeys); return false; } @@ -1566,7 +1566,7 @@ bool S3fsCurl::SetIAMCredentials(const char* response) bool S3fsCurl::CheckIAMCredentialUpdate(void) { - if(0 == S3fsCurl::IAM_role.size() && !S3fsCurl::is_ecs && !S3fsCurl::is_ibm_iam_auth){ + if(S3fsCurl::IAM_role.empty() && !S3fsCurl::is_ecs && !S3fsCurl::is_ibm_iam_auth){ return true; } if(time(NULL) + IAM_EXPIRE_MERGIN <= S3fsCurl::AWSAccessTokenExpire){ @@ -1714,7 +1714,7 @@ bool S3fsCurl::ResetHandle(void) if(0 == S3fsCurl::ssl_verify_hostname){ curl_easy_setopt(hCurl, CURLOPT_SSL_VERIFYHOST, 0); } - if(S3fsCurl::curl_ca_bundle.size() != 0){ + if(!S3fsCurl::curl_ca_bundle.empty()){ curl_easy_setopt(hCurl, CURLOPT_CAINFO, S3fsCurl::curl_ca_bundle.c_str()); } } @@ -2174,7 +2174,7 @@ int S3fsCurl::RequestPerform(void) // try to locate cert, if successful, then set the // option and continue - if(0 == S3fsCurl::curl_ca_bundle.size()){ + if(S3fsCurl::curl_ca_bundle.empty()){ if(!S3fsCurl::LocateBundle()){ S3FS_PRN_ERR("could not get CURL_CA_BUNDLE."); return -EIO; @@ -2252,7 +2252,7 @@ string S3fsCurl::CalcSignatureV2(const string& method, const string& strMD5, con string Signature; string StringToSign; - if(0 < S3fsCurl::IAM_role.size() || S3fsCurl::is_ecs){ + if(!S3fsCurl::IAM_role.empty() || S3fsCurl::is_ecs){ requestHeaders = curl_slist_sort_insert(requestHeaders, "x-amz-security-token", S3fsCurl::AWSAccessToken.c_str()); } @@ -2290,7 +2290,7 @@ string S3fsCurl::CalcSignature(const string& method, const string& canonical_uri string Signature, StringCQ, StringToSign; string uriencode; - if(0 < S3fsCurl::IAM_role.size() || S3fsCurl::is_ecs){ + if(!S3fsCurl::IAM_role.empty() || S3fsCurl::is_ecs){ requestHeaders = curl_slist_sort_insert(requestHeaders, "x-amz-security-token", S3fsCurl::AWSAccessToken.c_str()); } @@ -2543,7 +2543,7 @@ int S3fsCurl::GetIAMCredentials(void) if (!S3fsCurl::is_ecs && !S3fsCurl::is_ibm_iam_auth) { S3FS_PRN_INFO3("[IAM role=%s]", S3fsCurl::IAM_role.c_str()); - if(0 == S3fsCurl::IAM_role.size()) { + if(S3fsCurl::IAM_role.empty()) { S3FS_PRN_ERR("IAM role name is empty."); return -EIO; } diff --git a/src/fdcache.cpp b/src/fdcache.cpp index 4df92b3..6f7570f 100644 --- a/src/fdcache.cpp +++ b/src/fdcache.cpp @@ -176,7 +176,7 @@ bool CacheFileStat::SetPath(const char* tpath, bool is_open) bool CacheFileStat::Open(void) { - if(0 == path.size()){ + if(path.empty()){ return false; } if(-1 != fd){ @@ -665,7 +665,7 @@ void FdEntity::Clear(void) AutoLock auto_lock(&fdent_lock); if(-1 != fd){ - if(0 != cachepath.size()){ + if(!cachepath.empty()){ CacheFileStat cfstat(path.c_str()); if(!pagelist.Serialize(cfstat, true)){ S3FS_PRN_WARN("failed to save cache stat file(%s).", path.c_str()); @@ -702,7 +702,7 @@ void FdEntity::Close(void) refcnt--; } if(0 == refcnt){ - if(0 != cachepath.size()){ + if(!cachepath.empty()){ CacheFileStat cfstat(path.c_str()); if(!pagelist.Serialize(cfstat, true)){ S3FS_PRN_WARN("failed to save cache stat file(%s).", path.c_str()); @@ -834,7 +834,7 @@ int FdEntity::Open(headers_t* pmeta, ssize_t size, time_t time, bool no_fd_lock_ bool need_save_csf = false; // need to save(reset) cache stat file bool is_truncate = false; // need to truncate - if(0 != cachepath.size()){ + if(!cachepath.empty()){ // using cache // open cache and cache stat file, load page info. @@ -1039,7 +1039,7 @@ int FdEntity::SetMtime(time_t time) S3FS_PRN_ERR("futimes failed. errno(%d)", errno); return -errno; } - }else if(0 < cachepath.size()){ + }else if(!cachepath.empty()){ // not opened file yet. struct utimbuf n_mtime; n_mtime.modtime = time; @@ -1237,7 +1237,7 @@ int FdEntity::NoCacheLoadAndPost(off_t start, size_t size) // [NOTE] // This method calling means that the cache file is never used no more. // - if(0 != cachepath.size()){ + if(!cachepath.empty()){ // remove cache files(and cache stat file) FdManager::DeleteCacheFile(path.c_str()); // cache file path does not use no more. @@ -1826,7 +1826,7 @@ bool FdManager::SetCacheDir(const char* dir) bool FdManager::DeleteCacheDirectory(void) { - if(0 == FdManager::cache_dir.size()){ + if(FdManager::cache_dir.empty()){ return true; } string cache_path; @@ -1843,7 +1843,7 @@ int FdManager::DeleteCacheFile(const char* path) if(!path){ return -EIO; } - if(0 == FdManager::cache_dir.size()){ + if(FdManager::cache_dir.empty()){ return 0; } string cache_path; @@ -1876,7 +1876,7 @@ int FdManager::DeleteCacheFile(const char* path) bool FdManager::MakeCachePath(const char* path, string& cache_path, bool is_create_dir, bool is_mirror_path) { - if(0 == FdManager::cache_dir.size()){ + if(FdManager::cache_dir.empty()){ cache_path = ""; return true; } @@ -1908,7 +1908,7 @@ bool FdManager::MakeCachePath(const char* path, string& cache_path, bool is_crea bool FdManager::CheckCacheTopDir(void) { - if(0 == FdManager::cache_dir.size()){ + if(FdManager::cache_dir.empty()){ return true; } string toppath(FdManager::cache_dir + "/" + bucket); @@ -1938,7 +1938,7 @@ bool FdManager::CheckCacheDirExist(void) if(!FdManager::check_cache_dir_exist){ return true; } - if(0 == FdManager::cache_dir.size()){ + if(FdManager::cache_dir.empty()){ return true; } // check the directory @@ -1965,7 +1965,7 @@ uint64_t FdManager::GetFreeDiskSpace(const char* path) { struct statvfs vfsbuf; string ctoppath; - if(0 < FdManager::cache_dir.size()){ + if(!FdManager::cache_dir.empty()){ ctoppath = FdManager::cache_dir + "/"; ctoppath = get_exist_directory_path(ctoppath); // existed directory if(ctoppath != "/"){ @@ -2107,7 +2107,7 @@ FdEntity* FdManager::Open(const char* path, headers_t* pmeta, ssize_t size, time // make new obj ent = new FdEntity(path, cache_path.c_str()); - if(0 < cache_path.size()){ + if(!cache_path.empty()){ // using cache fent[string(path)] = ent; }else{ diff --git a/src/s3fs.cpp b/src/s3fs.cpp index 112f659..6dbca11 100644 --- a/src/s3fs.cpp +++ b/src/s3fs.cpp @@ -706,7 +706,7 @@ static int check_parent_object_access(const char* path, int mask) return 0; } if(X_OK == (mask & X_OK)){ - for(parent = mydirname(path); 0 < parent.size(); parent = mydirname(parent)){ + for(parent = mydirname(path); !parent.empty(); parent = mydirname(parent)){ if(parent == "."){ parent = "/"; } @@ -2513,7 +2513,7 @@ static int list_bucket(const char* path, S3ObjList& head, const char* delimiter, while(truncated){ string each_query = query_delimiter; - if(next_marker != ""){ + if(!next_marker.empty()){ each_query += "marker=" + urlEncode(next_marker) + "&"; next_marker = ""; } @@ -2679,7 +2679,7 @@ static bool GetXmlNsUrl(xmlDocPtr doc, string& nsurl) } } } - if(0 < strNs.size()){ + if(!strNs.empty()){ nsurl = strNs; result = true; } @@ -3828,7 +3828,7 @@ static int s3fs_check_service(void) s3fscurl.DestroyCurlHandle(); // make sure remote mountpath exists and is a directory - if(mount_prefix.size() > 0){ + if(!mount_prefix.empty()){ if(remote_mountpath_exists(mount_prefix.c_str()) != 0){ S3FS_PRN_CRIT("remote mountpath %s not found.", mount_prefix.c_str()); return EXIT_FAILURE; @@ -3871,7 +3871,7 @@ static int parse_passwd_file(bucketkvmap_t& resmap) // read each line while(getline(PF, line)){ line = trim(line); - if(0 == line.size()){ + if(line.empty()){ continue; } if('#' == line[0]){ @@ -3932,7 +3932,7 @@ static int parse_passwd_file(bucketkvmap_t& resmap) secret = trim(iter->substr(first_pos + 1, string::npos)); } if(resmap.end() != resmap.find(bucketname)){ - S3FS_PRN_EXIT("there are multiple entries for the same bucket(%s) in the passwd file.", ("" == bucketname ? "default" : bucketname.c_str())); + S3FS_PRN_EXIT("there are multiple entries for the same bucket(%s) in the passwd file.", (bucketname.empty() ? "default" : bucketname.c_str())); return -1; } kv.clear(); @@ -4038,7 +4038,7 @@ static int read_aws_credentials_file(const std::string &filename) string line; while(getline(PF, line)){ line = trim(line); - if(0 == line.size()){ + if(line.empty()){ continue; } if('#' == line[0]){ @@ -4129,7 +4129,7 @@ static int read_passwd_file(void) } string bucket_key = allbucket_fields_type; - if(0 < bucket.size() && bucketmap.end() != bucketmap.find(bucket)){ + if(!bucket.empty() && bucketmap.end() != bucketmap.find(bucket)){ bucket_key = bucket; } if(bucketmap.end() == bucketmap.find(bucket_key)){ @@ -4183,7 +4183,7 @@ static int get_access_keys(void) } // 2 - was specified on the command line - if(passwd_file.size() > 0){ + if(!passwd_file.empty()){ ifstream PF(passwd_file.c_str()); if(PF.good()){ PF.close(); @@ -4215,7 +4215,7 @@ static int get_access_keys(void) AWS_CREDENTIAL_FILE = getenv("AWS_CREDENTIAL_FILE"); if(AWS_CREDENTIAL_FILE != NULL){ passwd_file.assign(AWS_CREDENTIAL_FILE); - if(passwd_file.size() > 0){ + if(!passwd_file.empty()){ ifstream PF(passwd_file.c_str()); if(PF.good()){ PF.close(); @@ -4340,7 +4340,7 @@ static int my_fuse_opt_proc(void* data, const char* arg, int key, struct fuse_ar int ret; if(key == FUSE_OPT_KEY_NONOPT){ // the first NONOPT option is the bucket name - if(bucket.size() == 0){ + if(bucket.empty()){ if ((ret = set_bucket(arg))){ return ret; } @@ -4351,7 +4351,7 @@ static int my_fuse_opt_proc(void* data, const char* arg, int key, struct fuse_ar } // the second NONOPT option is the mountpoint(not utility mode) - if(0 == mountpoint.size() && 0 == utility_mode){ + if(mountpoint.empty() && 0 == utility_mode){ // save the mountpoint and do some basic error checking mountpoint = arg; struct stat stbuf; @@ -5054,7 +5054,7 @@ int main(int argc, char* argv[]) } // The first plain argument is the bucket - if(bucket.size() == 0){ + if(bucket.empty()){ S3FS_PRN_EXIT("missing BUCKET argument."); show_usage(); S3fsCurl::DestroyS3fsCurl(); @@ -5091,7 +5091,7 @@ int main(int argc, char* argv[]) // readable, non-empty directory, this checks determines // if the mountpoint option was ever supplied if(utility_mode == 0){ - if(mountpoint.size() == 0){ + if(mountpoint.empty()){ S3FS_PRN_EXIT("missing MOUNTPOINT argument."); show_usage(); S3fsCurl::DestroyS3fsCurl(); @@ -5107,7 +5107,7 @@ int main(int argc, char* argv[]) s3fs_destroy_global_ssl(); exit(EXIT_FAILURE); } - if(passwd_file.size() > 0 && S3fsCurl::IsSetAccessKeys()){ + if(!passwd_file.empty() && S3fsCurl::IsSetAccessKeys()){ S3FS_PRN_EXIT("specifying both passwd_file and the access keys options is invalid."); S3fsCurl::DestroyS3fsCurl(); s3fs_destroy_global_ssl();