--- 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);
}