]> git.llucax.com Git - z.facultad/75.06/emufs.git/commitdiff
Se eliminan warnings. Solo quedan los del truncate() que no puedo entender por que...
authorLeandro Lucarella <llucax@gmail.com>
Sun, 18 Apr 2004 00:03:47 +0000 (00:03 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Sun, 18 Apr 2004 00:03:47 +0000 (00:03 +0000)
emufs/emufs.c
emufs/tipo1.c
emufs/tipo3.c
emufs/tipo3_main.c

index 7d0d87f4f49843b5ee3fdd6b2ca26216567140af..ebd43371950763cf1a5a61f5c358c5dbbf09dbc6 100644 (file)
@@ -84,6 +84,7 @@ EMUFS *emufs_crear(const char *filename, EMUFS_Tipo tipo, EMUFS_BLOCK_SIZE tam_b
        char name[255];
        FILE *fp;
        EMUFS *efs;
+       int err = 0;
 
        /* Si no es un tipo conocido, sale. */
        if ((tipo != T1) && (tipo != T2) && (tipo != T3)) {
@@ -143,10 +144,12 @@ EMUFS *emufs_crear(const char *filename, EMUFS_Tipo tipo, EMUFS_BLOCK_SIZE tam_b
 
                case T1:
                        /* Asigna punteros a funciones. */
-                       /* TODO verificar que el tamaño de bloque sea como mínimo del
-                        * tamaño de la cabecera de un registro + N */
-                       fprintf(stderr, "tambloque = %d\n", efs->tam_bloque);
-                       emufs_tipo1_inicializar(efs);
+                       if ((err = emufs_tipo1_inicializar(efs))) {
+                               PERR("No se pudo inicializar el EMUFS de tipo1");
+                               free(efs->nombre);
+                               free(efs);
+                               return NULL;
+                       }
 
                        /* Guarda cabeceras propias. */
                        fwrite(&tam_bloque, sizeof(EMUFS_BLOCK_SIZE), 1, fp);
@@ -185,6 +188,7 @@ EMUFS *emufs_abrir(const char *filename)
        char name[255];
        char tipo;
        FILE *fp;
+       int err = 0;
 
        strcpy(name, filename);
        strcat(name, ".dat");
@@ -219,7 +223,11 @@ EMUFS *emufs_abrir(const char *filename)
                                return NULL;
                        }
                        /* Asigna punteros a funciones. */
-                       emufs_tipo1_inicializar(efs);
+                       if ((err = emufs_tipo1_inicializar(efs))) {
+                               PERR("No se pudo inicializar el EMUFS de tipo1");
+                               fclose(fp);
+                               return NULL;
+                       }
                        break;
                case T2:
                        /* Asigna punteros a funciones. */
index 18d3cb95b0888be3b321de6f8a3cc63fe4638175..eeaef09e97908f73ac4135f6ef775fb09cf10fa3 100644 (file)
@@ -63,9 +63,6 @@ static int emufs_tipo1_header_jump(FILE*);
 
 static int emufs_tipo1_block_jump(EMUFS*, FILE*, EMUFS_BLOCK_ID);
 
-static void emufs_tipo1_escribir_reg_en_memoria(char*, EMUFS_TIPO1_REG_HEADER,
-               char*);
-
 static void emufs_tipo1_escribir_reg_chunk_en_memoria(char* dst,
                EMUFS_TIPO1_REG_HEADER header, char* reg, EMUFS_REG_SIZE reg_size);
 
@@ -657,7 +654,7 @@ EMUFS_BLOCK_ID emufs_tipo1_grabar_bloque_fsc(EMUFS *efs, void *block,
                }
                /* si me lo solicitan, actualizo el .fsc */
                if (fs != EMUFS_NOT_FOUND) {
-                       if ((err = emufs_fsc_actualizar(efs, block_id, fs))) {
+                       if ((*err = emufs_fsc_actualizar(efs, block_id, fs))) {
                                /* TODO Manejo de errores */
                                PERR("no se pudo actualizar .fsc");
                                fclose(file);
@@ -707,12 +704,6 @@ int emufs_tipo1_block_jump(EMUFS* efs, FILE* fp, EMUFS_BLOCK_ID block_count)
        return 0; /* EMUFS_OK */
 }
 
-void emufs_tipo1_escribir_reg_en_memoria(char* dst, EMUFS_TIPO1_REG_HEADER header,
-               char* reg)
-{
-       emufs_tipo1_escribir_reg_chunk_en_memoria(dst, header, reg, header.size);
-}
-
 void emufs_tipo1_escribir_reg_chunk_en_memoria(char* dst,
                EMUFS_TIPO1_REG_HEADER header, char* reg, EMUFS_REG_SIZE reg_size)
 {
index 60a7139c8b92cf0aa5c880809f869ea88537971c..049c63d6bf85eb0ac1ed10c243109064ba89e0a2 100644 (file)
@@ -484,10 +484,10 @@ void emufs_tipo3_compactar(EMUFS *emu)
        EMUFS_REG_ID *tmp, max_id;
        EMUFS_BLOCK_ID block_id;
        EMUFS_REG_SIZE size;
-       EMUFS_Estadisticas s;
+       EMUFS_FREE fs;
        char name[255];
        char *reg;
-       int err=0, ID_aux, i,fs;
+       int err=0, ID_aux, i;
        
        strcpy(name, emu->nombre);
        strcat(name, ".dat");
index e94a05eab84cb018e184880ae0c6fb2074b2729b..f3563b2fe4c3939ce66d09bf0057ae69f0dad286 100644 (file)
@@ -51,7 +51,7 @@ int main(int argc, char *argv[])
        char h[100];
        char i[100];
        char* b_ptr;
-       int err = 0, max, min, j;
+       int err = 0, j;
        
        EMUFS_Estadisticas stats;
        if (argc != 2) {
@@ -77,7 +77,7 @@ int main(int argc, char *argv[])
        strcpy(i, "me argrego despues de borrar a un registro");        
        
        fp = emufs_crear("articulos", T3, atoi(argv[1]), 100);
-       printf("cant de bloques = %d\n", fp->tam_reg/(fp->tam_bloque-sizeof(EMUFS_REG_ID)) +1);
+       printf("cant de bloques = %lu\n", fp->tam_reg/(fp->tam_bloque-sizeof(EMUFS_REG_ID)) +1);
        printf("GRABANDO REGISTROS....\n");
        v[0] = fp->grabar_registro(fp, a, 100, &err);
        v[1] = fp->grabar_registro(fp, c, 100, &err);
@@ -89,7 +89,7 @@ int main(int argc, char *argv[])
        v[7] = fp->grabar_registro(fp, i, 100, &err);
        
        for (j=0; j<8; j++)     
-               printf("Grabado : %d\n", v[j]);
+               printf("Grabado : %lu\n", v[j]);
        
        printf("RECUPERANDO REGISTROS....\n");
        for (j=0; j<8; j++){    
@@ -100,7 +100,7 @@ int main(int argc, char *argv[])
        printf("BORRANDO REGISTROS....\n");
        for (j=0; j<8; j+=2){   
                fp->borrar_registro(fp, v[j]);
-               printf("borrado : %d\n", v[j]);
+               printf("borrado : %lu\n", v[j]);
        }
 
        for (j=1; j<8; j+=2){   
@@ -134,7 +134,7 @@ ver_archivo_FS(fp);
        printf("BORRANDO REGISTROS....\n");
        for (j=0; j<16; j+=3){  
                fp->borrar_registro(fp, v[j]);
-               printf("borrado : %d\n", v[j]);
+               printf("borrado : %lu\n", v[j]);
        }