From d93ae34d3fee76767f36b232969d6810634ffc69 Mon Sep 17 00:00:00 2001 From: Leandro Lucarella Date: Fri, 28 May 2004 22:44:27 +0000 Subject: [PATCH] Tamponado de memory leaks... --- emufs/emufs.c | 1 + emufs/tipo1.c | 6 +++++- emufs/tipo1_bplus_main.c | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/emufs/emufs.c b/emufs/emufs.c index 42c81f1..cd59b39 100644 --- a/emufs/emufs.c +++ b/emufs/emufs.c @@ -472,6 +472,7 @@ int guardar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO fwrite(&cant, 1, sizeof(int), fp); fwrite(indices, cant, sizeof(t_Indice), fp); fclose(fp); + free(indices); return 1; } diff --git a/emufs/tipo1.c b/emufs/tipo1.c index cc519cc..ffca191 100644 --- a/emufs/tipo1.c +++ b/emufs/tipo1.c @@ -753,7 +753,7 @@ int emufs_tipo1_insertar_ordenado(EMUFS *emu, void *ptr, EMUFS_REG_SIZE size, in EMUFS_REG_SIZE tam_reg, move_size; INDEX_DAT query; EMUFS_FREE fs; - char *bloque, *aux, *new_bloque; + char *bloque = 0, *aux, *new_bloque = 0; int cant_reg, i, result, dif; /*le asigno un posible numero de bloque para el caso en que no encuentre donde meterlo*/ @@ -867,6 +867,8 @@ int emufs_tipo1_insertar_ordenado(EMUFS *emu, void *ptr, EMUFS_REG_SIZE size, in clave = grabar_ordenado_en_bloque(emu,ptr,size,new_bloque,query.num_bloque, emu->tam_bloque-move_size,err); if(*err != 0){ PERR("NO SE PUDO GRABAR ORDENADO"); + free(new_bloque); + free(bloque); return -1; } /*actualizo el arbol con la nueva clave*/ @@ -876,6 +878,8 @@ int emufs_tipo1_insertar_ordenado(EMUFS *emu, void *ptr, EMUFS_REG_SIZE size, in return 0; } } + if (new_bloque) free(new_bloque); + if (bloque) free(bloque); return 0; } diff --git a/emufs/tipo1_bplus_main.c b/emufs/tipo1_bplus_main.c index 0d79d65..11b6c3b 100644 --- a/emufs/tipo1_bplus_main.c +++ b/emufs/tipo1_bplus_main.c @@ -104,6 +104,7 @@ int main (int argc,char* argv[]) emufs_tipo1_insertar_ordenado(emu, r, len, &err); PERR("REGISTRO 6 GRABADO"); free(r); + emufs_destruir(emu); return 0; -- 2.43.0