+ /* Obtenemos el offset donde arranca el registro */
+ if ((reg_offset = emufs_idx_buscar_registro(efs,id_reg)) == EMUFS_NOT_FOUND) {
+ /* TODO Manejo de errores */
+ PERR("Registro no encontrado");
+ return EMUFS_NOT_FOUND;
+ }
+
+ /* Obtenemos el Size del Registro en cuestion y hacemos un dummyfill*/
+ emufs_tipo2_get_regsize(efs,reg_offset,®_size);
+ emufs_tipo2_dummyfill(efs,reg_offset,reg_size);
+
+ /* Agregamos el GAP en el archivo de FSC, el cual hara un merge con */
+ /* otro GAP por delante y/o por detras en caso de hallarlo. */
+ emufs_fsc_agregar_gap(efs,reg_offset,reg_size+sizeof(EMUFS_REG_ID)+sizeof(EMUFS_REG_SIZE));
+
+ /* Agrego el ID que se ha liberado al archivo de ID's Libres */
+ emufs_did_agregar(efs,id_reg);
+
+ /* Borramos el registro del indice de posiciones relativas */
+ emufs_idx_borrar(efs,id_reg);
+
+ return(0);
+}
+
+/**********************************************************************/
+/* int emufs_tipo2_get_regsize(EMUFS *efs, EMUFS_OFFSET n_RegPos, */
+/* EMUFS_REG_SIZE *n_RegSize) */
+/* Objetivo: Devuelve el tamanio de un registro, dado su init offset */
+/* Parametros: EMUFS *efs // Struct con handlers + info del openfile. */
+/* EMUFS_OFFSET n_RegPos // Offset al inicio del registro */
+/* EMUFS_REG_SIZE *n_RegSize // Size to lookup and return */
+/**********************************************************************/
+int emufs_tipo2_get_regsize(EMUFS *efs, EMUFS_OFFSET reg_pos, EMUFS_REG_SIZE *reg_size)
+{
+ FILE *f_data;
+ char name_f[255];
+