Fix Issue #3771: Slice ctor checks for nullptr and creates empty string

Summary:
Fix Issue #3771   : Check for nullptr in Slice constructor
Slice ctor checks for nullptr and creates empty string if the string does not exist
Closes https://github.com/facebook/rocksdb/pull/3887

Differential Revision: D8098852

Pulled By: ajkr

fbshipit-source-id: 04471077defa9776ce7b8c389a61312ce31002fb
This commit is contained in:
Jacquin Mininger 2018-05-22 13:34:26 -07:00 committed by Facebook Github Bot
parent 7db721b9a6
commit 4420cb49da

View File

@ -43,7 +43,9 @@ class Slice {
// Create a slice that refers to s[0,strlen(s)-1]
/* implicit */
Slice(const char* s) : data_(s), size_(strlen(s)) { }
Slice(const char* s) : data_(s) {
size_ = (s == nullptr) ? 0 : strlen(s);
}
// Create a single slice from SliceParts using buf as storage.
// buf must exist as long as the returned Slice exists.