]> git.llucax.com Git - z.facultad/75.06/emufs.git/commitdiff
se cuelga
authorNicolás Dimov <ndimov@gmail.com>
Mon, 5 Apr 2004 21:21:54 +0000 (21:21 +0000)
committerNicolás Dimov <ndimov@gmail.com>
Mon, 5 Apr 2004 21:21:54 +0000 (21:21 +0000)
tipo3/emufs.c
tipo3/main.c
tipo3/param_cte.c

index 71e9dd00ceefcbfe2c44bdb0f00843b8275a0869..49cb4b402d925a6f5e33ff5b89b55538cc841314 100644 (file)
@@ -1,13 +1,11 @@
-
 #include "emufs.h"
 #include "param_cte.h"
 
 /* Defino las extenciones que usan cada tipo de archivo */
 #include "emufs.h"
 #include "param_cte.h"
 
 /* Defino las extenciones que usan cada tipo de archivo */
-#define EXT_TIPO3_ID ".id3"
+#define EXT_TIPO3_ID ".idx"
 #define EXT_TIPO3_DATA ".dat"
 #define EXT_TIPO3_DISP ".fsc"
 #define EXT_TIPO3_DATA ".dat"
 #define EXT_TIPO3_DISP ".fsc"
-#define EXT_TIPO3_IDS ".idc"
-#define EXT_TIPO3_EXTRA ".ids"
+#define EXT_TIPO3_IDS ".ids"
 
 char *str_dup(const char *s)
 {
 
 char *str_dup(const char *s)
 {
@@ -67,11 +65,7 @@ EMUFS *emufs_crear(const char *filename, char tipo, unsigned int tam_bloque, uns
                        strcat(name, EXT_TIPO3_IDS);
                        fp = fopen(name, "w");
                        fclose(fp);
                        strcat(name, EXT_TIPO3_IDS);
                        fp = fopen(name, "w");
                        fclose(fp);
-                       
-                       strcpy(name, filename);
-                       strcat(name, EXT_TIPO3_EXTRA);
-                       fp = fopen(name, "w");
-                       fclose(fp);
+
                break;
                default:
                        free(tmp);
                break;
                default:
                        free(tmp);
index 92e4707968a1a2e7ce1583eb82b8fadf77cbd6a1..c9796c1646ef0baa827a98369858e99706343595 100644 (file)
@@ -25,7 +25,7 @@ int main()
        
        
        fp = emufs_crear("articulos", T3, 220, 100);
        
        
        fp = emufs_crear("articulos", T3, 220, 100);
-
+       
        n1 = fp->grabar_registro(fp, a, 100);
        n2 = fp->grabar_registro(fp, c, 100);
        n3 = fp->grabar_registro(fp, d, 100);
        n1 = fp->grabar_registro(fp, a, 100);
        n2 = fp->grabar_registro(fp, c, 100);
        n3 = fp->grabar_registro(fp, d, 100);
index a67db77619a240424f8cafe0de134d9b677d36ef..a32db33f08172c5c4f17ab561e0c1e4afa813fff 100644 (file)
@@ -11,7 +11,7 @@ int leer_registro(EMUFS *emu, int ID, void *ptr, unsigned long tam_reg)
        int block, ID_aux;
        int iterador = 0;
        strcpy(name_f_block_reg,emu->nombre);
        int block, ID_aux;
        int iterador = 0;
        strcpy(name_f_block_reg,emu->nombre);
-       strcat(name_f_block_reg,".id3");
+       strcat(name_f_block_reg,".idx");
 
 
        if ( (f_block_reg = fopen(name_f_block_reg,"a+")) == NULL )
 
 
        if ( (f_block_reg = fopen(name_f_block_reg,"a+")) == NULL )
@@ -80,7 +80,7 @@ int buscar_registro(EMUFS *emu, int ID)
        BLOCK_REG_T reg;
        char name_f_block_reg[255];
        strcpy(name_f_block_reg,emu->nombre);
        BLOCK_REG_T reg;
        char name_f_block_reg[255];
        strcpy(name_f_block_reg,emu->nombre);
-       strcat(name_f_block_reg,".id3");
+       strcat(name_f_block_reg,".idx");
        
        if ( (f_block_reg = fopen(name_f_block_reg,"r")) == NULL) return -1; /*ERROR*/
        while ( !feof(f_block_reg) ){
        
        if ( (f_block_reg = fopen(name_f_block_reg,"r")) == NULL) return -1; /*ERROR*/
        while ( !feof(f_block_reg) ){
@@ -133,15 +133,14 @@ int grabar_registro(EMUFS *emu, void *ptr, unsigned long tam)
        strcat(name_f,".dat");
        
        strcpy(name_f_block_reg,emu->nombre);
        strcat(name_f,".dat");
        
        strcpy(name_f_block_reg,emu->nombre);
-       strcat(name_f_block_reg,".id3");
+       strcat(name_f_block_reg,".idx");
        
        strcpy(name_f_id,emu->nombre);
        
        strcpy(name_f_id,emu->nombre);
-       strcat(name_f_id,".idc");
+       strcat(name_f_id,".ids");
 
        strcpy(name_f_free,emu->nombre);
        strcat(name_f_free,".fsc");
        
 
        strcpy(name_f_free,emu->nombre);
        strcat(name_f_free,".fsc");
        
-       
        if ( (file = fopen(name_f,"a+"))==NULL ) return -1; /*ERROR*/
        /* me devuelve el ID del bloque donde quepa un registro y el espacio libre en "fs"*/
        num_bloque = buscar_lugar(emu, tam, &fs);
        if ( (file = fopen(name_f,"a+"))==NULL ) return -1; /*ERROR*/
        /* me devuelve el ID del bloque donde quepa un registro y el espacio libre en "fs"*/
        num_bloque = buscar_lugar(emu, tam, &fs);
@@ -161,7 +160,6 @@ int grabar_registro(EMUFS *emu, void *ptr, unsigned long tam)
                fseek(file, 0, SEEK_END); 
                /* grabo el bloque en el final del archivo */
                fwrite(bloque,emu->tam_bloque,1,file);
                fseek(file, 0, SEEK_END); 
                /* grabo el bloque en el final del archivo */
                fwrite(bloque,emu->tam_bloque,1,file);
-
                /*actualizo el archivo de espacios libres*/
                /*tengo que buscar la cantidad de bloques que existen*/
                /*me paro al principio salteando el encabezado del archivo*/
                /*actualizo el archivo de espacios libres*/
                /*tengo que buscar la cantidad de bloques que existen*/
                /*me paro al principio salteando el encabezado del archivo*/
@@ -182,6 +180,7 @@ int grabar_registro(EMUFS *emu, void *ptr, unsigned long tam)
                /*cargo el bloque en "bloque"*/
                bloque = (char*)malloc(emu->tam_bloque);        
                if ( leer_bloque(emu,num_bloque,bloque)== -1) return -1; 
                /*cargo el bloque en "bloque"*/
                bloque = (char*)malloc(emu->tam_bloque);        
                if ( leer_bloque(emu,num_bloque,bloque)== -1) return -1; 
+                       /*printf("el bloque existe y tiene esto = %s\n", bloque +sizeof(int)); */
                /*El error puede haberse producido porque la funcion leer_bloque devolvio -1, el cual es un bloque invalido*/
                /*insertar el registro en el bloque*/
                /*tengo que buscar un ID valido para el nuevo registro*/
                /*El error puede haberse producido porque la funcion leer_bloque devolvio -1, el cual es un bloque invalido*/
                /*insertar el registro en el bloque*/
                /*tengo que buscar un ID valido para el nuevo registro*/
@@ -289,7 +288,7 @@ int get_id(EMUFS *emu)
        char name_f_block_reg[255];
 
        strcpy(name_f_block_reg,emu->nombre);
        char name_f_block_reg[255];
 
        strcpy(name_f_block_reg,emu->nombre);
-       strcat(name_f_block_reg,".id3");
+       strcat(name_f_block_reg,".idx");
 
        strcpy(name_f_reg_exist,emu->nombre);
        strcat(name_f_reg_exist,".ids");
 
        strcpy(name_f_reg_exist,emu->nombre);
        strcat(name_f_reg_exist,".ids");