Преглед на файлове

Replace unportable strndup()

Serj Kalichev преди 11 години
родител
ревизия
a6800e0b6b
променени са 1 файла, в които са добавени 3 реда и са изтрити 1 реда
  1. 3 1
      clish/shell/shell_expat.c

+ 3 - 1
clish/shell/shell_expat.c

@@ -226,7 +226,9 @@ static void clish_expat_chardata_handler(void *data, const char *s, int len)
 	clish_xmldoc_t *doc = data;
 
 	if (doc->current) {
-		char *content = strndup(s, len);
+		char *content = malloc(len + 1);
+		strncpy(content, s, len);
+		content[len] = '\0';
 
 		clish_expat_make_node(doc->current, CLISH_XMLNODE_TEXT, NULL, content, NULL);
 		/*