]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs/fsc.c
* BUGFIX : habia 2 parametros mal al llamar a IDX_AGREGAR en tipo3 grabar_bloque
[z.facultad/75.06/emufs.git] / emufs / fsc.c
index a94a2f1ecfde3b1399f3b135e23a427e3213ccb3..d9b26bb2af1bcc9bfb1c5979aeb7810549e05df7 100644 (file)
@@ -205,31 +205,34 @@ int emufs_fsc_actualizar(EMUFS *emu, EMUFS_BLOCK_ID n_marker, EMUFS_FREE n_frees
 }
 
 /* Me devuelve el ID del bloque u Offset del Gap donde quepa un registro, y guarda en n_freespace el espacio libre actualizado */
 }
 
 /* Me devuelve el ID del bloque u Offset del Gap donde quepa un registro, y guarda en n_freespace el espacio libre actualizado */
-EMUFS_BLOCK_ID emufs_fsc_buscar_lugar(EMUFS *emu, EMUFS_FREE n_RegSize, EMUFS_FREE *n_freespace)
+EMUFS_BLOCK_ID emufs_fsc_buscar_lugar(EMUFS *emu, EMUFS_FREE regsize, EMUFS_FREE *freespace)
 {
        FILE *f_fsc;
        EMUFS_FSC reg;
        char name_f_fsc[255];
 {
        FILE *f_fsc;
        EMUFS_FSC reg;
        char name_f_fsc[255];
-       unsigned short int b_Found = 0;
+       char found = 0;
        
        strcpy(name_f_fsc,emu->nombre);
        strcat(name_f_fsc, EMUFS_FSC_EXT);
 
        
        strcpy(name_f_fsc,emu->nombre);
        strcat(name_f_fsc, EMUFS_FSC_EXT);
 
-       if ( (f_fsc = fopen(name_f_fsc,"r"))==NULL ) return -1;
+       if ( (f_fsc = fopen(name_f_fsc,"r"))==NULL ) return EMUFS_NOT_FOUND;
 
        /* Inicializamos la estructura para devolver algun valor en concreto */
        /* en caso de que no se halle un espacio libre apropiado */
 
        /* Inicializamos la estructura para devolver algun valor en concreto */
        /* en caso de que no se halle un espacio libre apropiado */
-       while(!feof(f_fsc) && !b_Found){
+       while(!feof(f_fsc)){
                if (fread(&reg,sizeof(EMUFS_FSC),1,f_fsc) != 1) continue;
                if (fread(&reg,sizeof(EMUFS_FSC),1,f_fsc) != 1) continue;
-               if (reg.n_freespace >= n_RegSize) b_Found = 1;
+               if (reg.n_freespace >= regsize) {
+                       found = 1;
+                       break;
+               }
        }
        
        /* Si salio por error o por fin de archivo y no encontro space... */
        }
        
        /* Si salio por error o por fin de archivo y no encontro space... */
-       if (!b_Found) {
-         reg.n_marker = -1;
-         *n_freespace = emu->tam_bloque; 
+       if (!found) {
+         reg.n_marker = EMUFS_NOT_FOUND;
+         *freespace = emu->tam_bloque; 
        }
        }
-       else *n_freespace = reg.n_freespace;
+       else *freespace = reg.n_freespace;
        
        fclose(f_fsc);
        return reg.n_marker;
        
        fclose(f_fsc);
        return reg.n_marker;