Common: Add StringFromFixedZeroTerminatedBuffer

This commit is contained in:
Yuri Kunde Schlesner 2015-05-06 21:32:52 -03:00
parent 0f39cc359b
commit 8809d02db3
2 changed files with 14 additions and 0 deletions

View file

@ -477,4 +477,12 @@ std::string SHIFTJISToUTF8(const std::string& input)
#endif #endif
std::string StringFromFixedZeroTerminatedBuffer(const char * buffer, size_t max_len) {
size_t len = 0;
while (len < max_len && buffer[len] != '\0')
++len;
return std::string(buffer, len);
}
} }

View file

@ -128,4 +128,10 @@ bool ComparePartialString(InIt begin, InIt end, const char* other) {
return (begin == end) == (*other == '\0'); return (begin == end) == (*other == '\0');
} }
/**
* Creates a std::string from a fixed-size NUL-terminated char buffer. If the buffer isn't
* NUL-terminated then the string ends at max_len characters.
*/
std::string StringFromFixedZeroTerminatedBuffer(const char* buffer, size_t max_len);
} }