Browse Source

Fix crash with String copy from with NULL string parameter

(cherry picked from commit 4b2a44054a70020bbbad14a710cc92042834a9c1)
geequlim 8 years ago
parent
commit
9d49491afd
1 changed files with 12 additions and 0 deletions
  1. 12 0
      core/ustring.cpp

+ 12 - 0
core/ustring.cpp

@@ -64,6 +64,12 @@ const char *CharString::get_data() const {
 
 
 void String::copy_from(const char *p_cstr) {
 void String::copy_from(const char *p_cstr) {
 
 
+	if (!p_cstr) {
+
+		resize(0);
+		return;
+	}
+
 	int len = 0;
 	int len = 0;
 	const char *ptr = p_cstr;
 	const char *ptr = p_cstr;
 	while (*(ptr++) != 0)
 	while (*(ptr++) != 0)
@@ -87,6 +93,12 @@ void String::copy_from(const char *p_cstr) {
 
 
 void String::copy_from(const CharType *p_cstr, int p_clip_to) {
 void String::copy_from(const CharType *p_cstr, int p_clip_to) {
 
 
+	if (!p_cstr) {
+
+		resize(0);
+		return;
+	}
+
 	int len = 0;
 	int len = 0;
 	const CharType *ptr = p_cstr;
 	const CharType *ptr = p_cstr;
 	while (*(ptr++) != 0)
 	while (*(ptr++) != 0)