- if (fread(ptr,emu->tam_bloque,1,file)!=1) return -1;
+ block = (char*) malloc(emu->tam_bloque);
+ if (block == NULL) {
+ /* TODO Manejo de errores */
+ PERR("No hay memoria");
+ *err = 2; /* EMUFS_ERROR_OUT_OF_MEMORY */
+ return NULL;
+ }
+ if (fread(block, emu->tam_bloque, 1, file) != 1) {
+ /* TODO Manejo de errores */
+ free(block);
+ PERR("Error al leer bloque");
+ *err = 3; /* EMUFS_ERROR_FILE_READ */
+ return NULL;
+ }