Fix -ve std::string::resize

Summary:
I saw this exception thrown because sometimes we may resize with -ve value
if we have empty max_bytes_for_level_multiplier_additional vector

Test Plan: run the tests

Reviewers: yiwu

Reviewed By: yiwu

Subscribers: andrewkr, dhruba

Differential Revision: https://reviews.facebook.net/D64791
This commit is contained in:
Islam AbdelRahman 2016-10-07 17:16:13 -07:00
parent 04b02dd121
commit 67501cfc9a

View File

@ -153,7 +153,12 @@ void MutableCFOptions::Dump(Logger* log) const {
snprintf(buf, sizeof(buf), "%d, ", m);
result += buf;
}
result.resize(result.size() - 2);
if (result.size() >= 2) {
result.resize(result.size() - 2);
} else {
result = "";
}
Log(log, "max_bytes_for_level_multiplier_additional: %s", result.c_str());
Log(log, " verify_checksums_in_compaction: %d",
verify_checksums_in_compaction);