weex (2.6.1-7) src/filedata.c

Summary

 src/filedata.c |   15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

    
download this patch

Patch contents

--- weex-2.6.1.orig/src/filedata.c
+++ weex-2.6.1/src/filedata.c
@@ -138,8 +138,8 @@
 -------------------------------------------------- */
 int get_remote_file_data(FileData **remote_data)
 {
-	char *list_temp;
-	char *list_temp_dir;
+	char list_temp[32];
+	int  fd;
 	FILE *fp;
 	char *fgets_temp;
 	char *file_name;
@@ -155,10 +155,9 @@
 	if(strcmp(current_dir[REMOTE],dest_dir[host_number])!=0){
 		change_dir_actually(REMOTE);
 	}
-	list_temp_dir=str_concat(getenv("HOME"),"/.weex",NULL);
-	list_temp=tempnam(list_temp_dir,"weex");
-	free(list_temp_dir);
-	if(list_temp==NULL){
+	strcpy(list_temp, "/tmp/weexXXXXXX");
+	fd=mkstemp(list_temp);
+	if(fd==-1){
 		fprintf(stderr,_("Cannot create a unique file name.\n"));
 		ftp_disconnect();
 		exit(1);
@@ -171,7 +170,7 @@
 		ftp_disconnect();
 		exit(1);
 	}
-	fp=fopen(list_temp,"r");
+	fp=fdopen(fd,"r");
 	if(fp==NULL){
 		fprintf(stderr,_("Cannot open `%s'.\n"),list_temp);
 		ftp_disconnect();
@@ -253,7 +252,7 @@
 		exit(1);
 	}
 	free(add_cache_num);
-	free(list_temp);
+	/* free(list_temp); */
 	return(file_num);
 }