| 85 | } |
| 86 | |
| 87 | int session_load(char **cmd_device, char **current_cmd, alloc_data_t *list_free_space) |
| 88 | { |
| 89 | FILE *f_session; |
| 90 | char *buffer; |
| 91 | char *pos; |
| 92 | int taille; |
| 93 | struct stat stat_rec; |
| 94 | unsigned int buffer_size; |
| 95 | // time_t my_time; |
| 96 | char *info=NULL; |
| 97 | *cmd_device=NULL; |
| 98 | *current_cmd=NULL; |
| 99 | f_session=fopen(SESSION_FILENAME,"rb"); |
| 100 | if(!f_session) |
| 101 | { |
| 102 | log_info("Can't open photorec.ses file: %s\n",strerror(errno)); |
| 103 | session_save_empty(); |
| 104 | return -1; |
| 105 | } |
| 106 | #ifndef DISABLED_FOR_FRAMAC |
| 107 | if(fstat(fileno(f_session), &stat_rec)>=0) |
| 108 | buffer_size=stat_rec.st_size; |
| 109 | else |
| 110 | #endif |
| 111 | buffer_size=SESSION_MAXSIZE; |
| 112 | buffer=(char *)MALLOC(buffer_size+1); |
| 113 | taille=fread(buffer,1,buffer_size,f_session); |
| 114 | #if defined(__FRAMAC__) |
| 115 | Frama_C_make_unknown(buffer, buffer_size); |
| 116 | #endif |
| 117 | buffer[taille]='\0'; |
| 118 | fclose(f_session); |
| 119 | pos=buffer; |
| 120 | if(*pos!='#') |
| 121 | { |
| 122 | free(buffer); |
| 123 | return -1; |
| 124 | } |
| 125 | pos++; |
| 126 | /* load time */ |
| 127 | strtol(pos,&pos,10); // my_time=strtol(pos,&pos,10); |
| 128 | if(pos==NULL) |
| 129 | { |
| 130 | free(buffer); |
| 131 | return 0; |
| 132 | } |
| 133 | pos=strstr(pos,"\n"); |
| 134 | if(pos==NULL) |
| 135 | { |
| 136 | free(buffer); |
| 137 | return 0; |
| 138 | } |
| 139 | pos++; |
| 140 | /* get current disk */ |
| 141 | info=pos; |
| 142 | pos=strstr(info," "); |
| 143 | if(pos==NULL) |
| 144 | { |
no test coverage detected