Package: cloop-utils
Version: 2.01.5-3
Severity: important
create_compressed_fs add extra block to the compressed image if the size of
the original image is a multiple of the block size. You can verify this by
the following simple test:
% head -c 65536 /dev/zero > uncompressed.iso
% create_compressed_fs uncompressed.iso 65536 > compressed.iso
% extract_compressed_fs compressed.iso > uncompressed2.iso
% ls -l uncompressed.iso uncompressed2.iso
... 131072 Feb 20 16:02 uncompressed2.iso
... 65536 Feb 20 16:02 uncompressed.iso
I've attached the patch fixing the problem.
Cheers,
Igor
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.9
Locale: LANG=C, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R)
Versions of packages cloop-utils depends on:
ii libc6 2.3.2.ds1-20 GNU C Library: Shared libraries an
ii libgcc1 1:3.4.3-9 GCC support library
ii libstdc++5 1:3.3.5-8 The GNU Standard C++ Library v3
ii zlib1g 1:1.2.2-4 compression library - runtime
-- no debconf information
--- cloop-2.01.5/create_compressed_fs.c.orig 2005-02-20 15:45:37.461085843
-0500
+++ cloop-2.01.5/create_compressed_fs.c 2005-02-20 15:42:28.573507361 -0500
@@ -94,6 +94,8 @@
if(r<=0) { last=1; break; }
total+=r;
}
+ if (total == 0)
+ break;
total_uncompressed += total;
if (total != blocksize)
{
--- cloop-2.01.5/advancecomp-1.9_create_compressed_fs/advfs.cc.orig
2005-02-20 15:45:54.029058097 -0500
+++ cloop-2.01.5/advancecomp-1.9_create_compressed_fs/advfs.cc 2005-02-20
15:42:47.281119726 -0500
@@ -91,6 +91,8 @@
if(r<=0) { last=1; break; }
total+=r;
}
+ if (total == 0)
+ break;
total_uncompressed += total;
if (total != blocksize)
{