--- capa/capa51/pProj/capaCgiUtils.c 2000/08/07 20:47:29 1.20 +++ capa/capa51/pProj/capaCgiUtils.c 2000/10/10 20:03:23 1.21 @@ -403,7 +403,7 @@ char *log_string; tmtime=localtime(&t); strftime(timeStr,FILE_NAME_LENGTH,"%d/%m %X",tmtime); /*ct[ strlen(ct)-1 ]=0;*/ /* Trash newline */ - protect_log_string(log_string); + /*protect_log_string(log_string);*/ /* done on indiviual answers now*/ fprintf(fp,"%s\t%s\t%s\n",student_number,timeStr,log_string); fflush(fp); fclose(fp); return (0); @@ -413,7 +413,7 @@ char *log_string; void w_get_responses(int x,int q_idx,char* submissions_str) { int leng, sub_idx; - char buf[MAX_BUFFER_SIZE]; + char buf[MAX_BUFFER_SIZE],*tmp; if( !strncmp(g_entries[x].name,"INPUT",5) ) { if( index(g_entries[x].name, ',' ) == NULL ) { /* only one answer */ sscanf(g_entries[x].name,"INPUT%d",&q_idx); @@ -427,7 +427,10 @@ void w_get_responses(int x,int q_idx,cha } leng = strlen( g_entries[x].val ); if ( leng > 0 ) { - sprintf(buf,"%d\t%s\t",q_idx,g_entries[x].val); + tmp=strsave(g_entries[x].val); + protect_log_string(tmp); + sprintf(buf,"%d\t%s\t",q_idx,tmp); + capa_mfree(tmp); strcat(submissions_str,buf); } } @@ -451,7 +454,10 @@ void w_get_responses(int x,int q_idx,cha } leng = strlen( g_entries[x].val ); if ( leng > 0 ) { - sprintf(buf,"%d\t%s\t",q_idx,g_entries[x].val); + tmp=strsave(g_entries[x].val); + protect_log_string(tmp); + sprintf(buf,"%d\t%s\t",q_idx,tmp); + capa_mfree(tmp); strcat(submissions_str,buf); } }