X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/d718803ef7f9e17b2fb893ea9c7c2905a1591cf2..2470cecbf9f0f40714b9f50d9a76d187abe336e6:/emufs/emufs.c diff --git a/emufs/emufs.c b/emufs/emufs.c index fc4165d..712ae91 100644 --- a/emufs/emufs.c +++ b/emufs/emufs.c @@ -374,7 +374,7 @@ int debug_ver_estadisticas(EMUFS* efs) return 0; } -int emufs_agregar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO tipo, INDICE_TIPO_DATO tipo_dato, unsigned int offset, unsigned int tam_bloque) +int emufs_agregar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO tipo, INDICE_TIPO_DATO tipo_dato, unsigned int offset, unsigned int tam_bloque, int str_offset) { INDICE *tmp; int error=0; @@ -408,7 +408,7 @@ int emufs_agregar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDIC /* Creo el nuevo indice */ PERR("Creando indice\n"); - tmp = emufs_indice_crear(emu, nombre, funcion, tipo, tipo_dato, offset, tam_bloque); + tmp = emufs_indice_crear(emu, nombre, funcion, tipo, tipo_dato, offset, tam_bloque, str_offset); /* Guardo la info del indice para poder abrir despues el archivo */ guardar_indice(emu, nombre, funcion, tipo, tipo_dato, offset, tam_bloque); @@ -507,10 +507,6 @@ EMUFS_BLOCK_ID emufs_create_new_block(EMUFS *emu) dummy = (char*)malloc(emu->tam_bloque); memset(dummy, 0, emu->tam_bloque); fwrite(dummy, emu->tam_bloque, 1, fp); -<<<<<<< .mine - fprintf(stderr, "new_block ftell = %ld\n", ftell(fp)); -======= ->>>>>>> .r552 switch(emu->tipo){ case T1: num = (ftell(fp)-sizeof(EMUFS_Tipo)-sizeof(EMUFS_BLOCK_SIZE))/emu->tam_bloque; break; @@ -518,7 +514,7 @@ EMUFS_BLOCK_ID emufs_create_new_block(EMUFS *emu) } fclose(fp); free(dummy); - return num; + return num-1; } /*devuelve un numero de bloque siguiente al ultimo*/ @@ -542,7 +538,6 @@ EMUFS_BLOCK_ID emufs_get_new_block_number(EMUFS *emu) switch(emu->tipo){ case T1: num = (ftell(fp)-sizeof(EMUFS_Tipo)-sizeof(EMUFS_BLOCK_SIZE))/emu->tam_bloque; if (ftell(fp) == sizeof(EMUFS_Tipo)+sizeof(EMUFS_BLOCK_SIZE)) num = 0; - PERR("PASE"); break; case T3: num = (ftell(fp)-sizeof(EMUFS_Tipo)-sizeof(EMUFS_BLOCK_SIZE)-sizeof(EMUFS_REG_SIZE))/emu->tam_bloque; if (ftell(fp) == sizeof(EMUFS_Tipo)+sizeof(EMUFS_BLOCK_SIZE)+sizeof(EMUFS_REG_SIZE)) num = 0;