]> git.llucax.com Git - z.facultad/75.06/jacu.git/blobdiff - src/jacu.c
Abro el archivo fuente de una compresion antes de inicializar el huffman para evitar...
[z.facultad/75.06/jacu.git] / src / jacu.c
index 8b6dcd7d84b948a1e063f35b2351c4b55f44a7f4..4171d02a879b2f2500df47d7f8da3f81e9707262 100644 (file)
@@ -137,6 +137,9 @@ int comprimir(char *src, char *dst, Uint32 pagesize, Uint32 volumesize, t_Flags
        unsigned char *z;
        int z_len;
        
+       /* Abrimos el archivo a comprimir y encodeamos bloques */
+       if ((fp = fopen(src, "rb")) == NULL) return 1;
+       
        /* Preparo el compresor huffman */
        if ((shuff = shuff_init_encoder_bychunk(dst, volumesize*1024)) == NULL) return 1;
        if (flags->mflag == 1) shuff_loadmodel(shuff, staticmodel);
@@ -146,9 +149,6 @@ int comprimir(char *src, char *dst, Uint32 pagesize, Uint32 volumesize, t_Flags
        salida = malloc(sizeof(unsigned char)*pagesize+sizeof(Uint32));
        bs = bs_create(pagesize);
 
-       /* Abrimos el archivo a comprimir y encodeamos bloques */
-       if ((fp = fopen(src, "rb")) == NULL) return 1;
-
        /* Guardamos el pagesize como header (huffencoded) */
        shuff_scanfreq_chunk(shuff,(char*)&pagesize,sizeof(Uint32));