From: Leandro Lucarella Date: Fri, 16 Apr 2004 04:48:29 +0000 (+0000) Subject: - bugfixes. guardar_registro() ya guarda registros mas grandes que el bloque. X-Git-Tag: svn_import_r684~465 X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/commitdiff_plain/f60bd6b2e681ddce2841392ab10618bb148ca24e?ds=inline - bugfixes. guardar_registro() ya guarda registros mas grandes que el bloque. --- diff --git a/emufs/tipo1.c b/emufs/tipo1.c index 8bccc4c..fa24cf0 100644 --- a/emufs/tipo1.c +++ b/emufs/tipo1.c @@ -257,9 +257,10 @@ EMUFS_REG_ID emufs_tipo1_grabar_registro(EMUFS* efs, void* reg, return EMUFS_NOT_FOUND; } /* grabo el nuevo registro en el archivo de espacios libres */ - *err = emufs_fsc_agregar(efs, block_id, block_space - chunk_size); + *err = emufs_fsc_agregar(efs, curr_block_id, block_space - chunk_size); if (*err) { PERR("No se pudo agregar fsc"); + free(block); return EMUFS_NOT_FOUND; } /* si es el primer id de bloque obtenido, lo guardo para @@ -267,7 +268,7 @@ EMUFS_REG_ID emufs_tipo1_grabar_registro(EMUFS* efs, void* reg, if (block_id == EMUFS_NOT_FOUND) { block_id = curr_block_id; } - } while (chunk_size > block_space); + } while (reg_header.size > block_space); free(block); /* Encontró espacio en un bloque existente, graba registro ahí */