X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/defa938b3f327a42634161a5815e06f94b20b554..32e8d7768f2eea899ca5166f75c2c55a672d7f79:/emufs/tipo3.c diff --git a/emufs/tipo3.c b/emufs/tipo3.c index a28b635..a76725c 100644 --- a/emufs/tipo3.c +++ b/emufs/tipo3.c @@ -354,9 +354,14 @@ int emufs_tipo3_borrar_registro(EMUFS *emu, CLAVE k) cant_bloques = 1; PERR("Buscando datos del registro en el indice"); - dato = emu->indices->existe_entrada(emu->indices, k); - num_bloque = dato.bloque; /*emufs_idx_buscar_registro(emu, ID);*/ - ID = dato.id; + if (emu->indices != NULL) { + dato = emu->indices->existe_entrada(emu->indices, k); + num_bloque = dato.bloque; + ID = dato.id; + } else { + ID = k.i_clave; + num_bloque = emufs_idx_buscar_registro(emu, ID); + } if (!(bloque = emufs_tipo3_leer_bloque(emu, num_bloque, &err))) { /* TODO Manejo de errores */ @@ -477,9 +482,9 @@ EMUFS_Estadisticas emufs_tipo3_leer_estadisticas(EMUFS *emu) return stats; } -EMUFS_REG_ID emufs_tipo3_modificar_registro(EMUFS *emu, EMUFS_REG_ID id, void *data, EMUFS_REG_SIZE size, int *error) +EMUFS_REG_ID emufs_tipo3_modificar_registro(EMUFS *emu, CLAVE k, void *data, EMUFS_REG_SIZE size, int *error) { - /*emufs_tipo3_borrar_registro(emu, id);*/ + emufs_tipo3_borrar_registro(emu, k); return emufs_tipo3_grabar_registro(emu, data, size, error); }