*/
#include "fsc.h"
+#include "error.h"
#include <unistd.h>
#include <sys/types.h>
#include <string.h>
/* Busco el gap que sucede a este */
fseek(f_fsc,0,SEEK_SET);
while (!feof(f_fsc)) {
- fread(&gap_aux,sizeof(EMUFS_FSC),1,f_fsc);
+ if (fread(&gap_aux,sizeof(EMUFS_FSC),1,f_fsc) != 1) {
+ if (feof(f_fsc)) break;
+ PERR("error al leer archivo fsc");
+ }
if (gap_aux.marker > gap_new.marker) {
found = 1;
break;
/* chequeo que al menos se busque un lugar */
if (!n) {
PERR("Se debe buscar al menos un lugar");
- *err = 13; /* EMUFS_ERROR_WRONG_ARGUMENT */
+ *err = EMUFS_ERROR_WRONG_ARGUMENT;
return EMUFS_NOT_FOUND;
}
strcat(name_f_fsc, EMUFS_FSC_EXT);
if (!(f_fsc = fopen(name_f_fsc, "rb"))) {
PERR("No se puede abrir archivo");
- *err = 4; /* EMUFS_ERROR_CANT_OPEN_FILE */
+ *err = EMUFS_ERROR_CANT_OPEN_FILE;
return EMUFS_NOT_FOUND;
}
if ((fread(®, sizeof(EMUFS_FSC), 1, f_fsc) != 1)) {
if (feof(f_fsc)) break;
PERR("No se puede leer el archivo");
- *err = 3; /* EMUFS_ERROR_FILE_READ */
+ *err = EMUFS_ERROR_FILE_READ;
return EMUFS_NOT_FOUND;
}
if (reg.freespace >= reg_size) {
if (fread(®, sizeof(EMUFS_FSC), 1, f_fsc) != 1) {
if (feof(f_fsc)) break;
PERR("No se puede leer el archivo");
- *err = 3; /* EMUFS_ERROR_FILE_READ */
+ *err = EMUFS_ERROR_FILE_READ;
return EMUFS_NOT_FOUND;
}
/* no hay otro lugar consecutivo */