瀏覽代碼

Fix for printing values that contain % literals. Thanks to Jimmy Tam!

git-svn-id: http://svn.code.sf.net/p/cjson/code@11 e3330c51-1366-4df0-8b21-3ccf24e3d50e
Dave Gamble 15 年之前
父節點
當前提交
37da1d2493
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      cJSON.c

+ 3 - 3
cJSON.c

@@ -312,7 +312,7 @@ static char *print_array(cJSON *item,int depth)
 		len+=strlen(ret)+3;
 		out=(char*)cJSON_realloc(out,len);
 		ptr=out+strlen(out);
-		ptr+=sprintf(ptr,ret);
+		ptr+=sprintf(ptr,"%s",ret);
 		if (child->next) {*ptr++=',';*ptr++=' ';*ptr=0;}
 		child=child->next;
 		cJSON_free(ret);
@@ -374,9 +374,9 @@ static char *print_object(cJSON *item,int depth)
 		out=(char*)cJSON_realloc(out,len);
 		ptr=out+strlen(out);
 		for (i=0;i<depth;i++) *ptr++='\t';
-		ptr+=sprintf(ptr,str);
+		ptr+=sprintf(ptr,"%s",str);
 		*ptr++=':';*ptr++='\t';
-		ptr+=sprintf(ptr,ret);
+		ptr+=sprintf(ptr,"%s",ret);
 		if (child->next) *ptr++=',';
 		*ptr++='\n';*ptr=0;
 		child=child->next;