|
@@ -29,15 +29,18 @@ String::String() {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
String::String(const wchar_t *str) {
|
|
String::String(const wchar_t *str) {
|
|
|
- wstrToUtf8(contents, str);
|
|
|
|
|
|
|
+ if (str)
|
|
|
|
|
+ wstrToUtf8(contents, str);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
String::String(const char *str) {
|
|
String::String(const char *str) {
|
|
|
- contents = str;
|
|
|
|
|
|
|
+ if (str)
|
|
|
|
|
+ contents = str;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
String::String(const char *str, size_t n) {
|
|
String::String(const char *str, size_t n) {
|
|
|
- contents = string(str, n);
|
|
|
|
|
|
|
+ if (str)
|
|
|
|
|
+ contents = string(str, n);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
String::String(const string& str) {
|
|
String::String(const string& str) {
|
|
@@ -76,7 +79,10 @@ const char *String::getDataWithEncoding(int encoding) const {
|
|
|
void String::setDataWithEncoding(char *data, int encoding) {
|
|
void String::setDataWithEncoding(char *data, int encoding) {
|
|
|
switch(encoding) {
|
|
switch(encoding) {
|
|
|
case ENCODING_UTF8: {
|
|
case ENCODING_UTF8: {
|
|
|
- contents = data;
|
|
|
|
|
|
|
+ if (data)
|
|
|
|
|
+ contents = data;
|
|
|
|
|
+ else
|
|
|
|
|
+ contents = std::string();
|
|
|
}
|
|
}
|
|
|
default:
|
|
default:
|
|
|
break;
|
|
break;
|