Package: partclone
Version: 0.2.22-2
Severity: important
Tags: upstream patch
This bug is mentioned online once
http://sourceforge.net/projects/clonezilla/forums/forum/799287/topic/4500041
with the fix being to use an x86 version. I can confirm that the x86 debian
package works from a chroot.
On amd64 hfsplusclone detects the hfs partition as being empty.
The bug is due to explicit use of long in hfsplusclone.h and expecting it to be
32-bit.
The attached patch resolves the amd64 bug for me and also still works in the
x86 chroot, tested by cloning and restoring an hfsplus partition.
This bug persists in the latest 0.2.24 upstream.
-- System Information:
Debian Release: wheezy/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.0.0-1-amd64 (SMP w/6 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages partclone depends on:
ii e2fslibs 1.42~WIP-2011-07-02-1 ext2/ext3/ext4 file system librari
ii libc6 2.13-10 Embedded GNU C Library: Shared lib
ii libcomerr2 1.42~WIP-2011-07-02-1 common error description library
ii libncursesw5 5.9-1 shared libraries for terminal hand
ii libntfs10 2.0.0-1+b1 library that provides common NTFS
ii libuuid1 2.19.1-4 Universally Unique ID library
partclone recommends no packages.
partclone suggests no packages.
-- no debconf information
diff -u orig-partclone-0.2.22/src//hfsplusclone.c partclone-0.2.22/src//hfsplusclone.c
--- orig-partclone-0.2.22/src//hfsplusclone.c 2011-03-28 00:19:59.000000000 -0700
+++ partclone-0.2.22/src//hfsplusclone.c 2011-08-05 10:23:56.000000000 -0700
@@ -128,8 +128,8 @@
UInt32 bused = 0, bfree = 0, mused = 0;
UInt32 block = 0, extent_block = 0, tb = 0, i = 0;
int allocation_exten = 0;
- long int allocation_start_block;
- long int allocation_block_size;
+ UInt32 allocation_start_block;
+ UInt32 allocation_block_size;
int start = 0;
int bit_size = 1;
diff -u orig-partclone-0.2.22/src//hfsplusclone.h partclone-0.2.22/src//hfsplusclone.h
--- orig-partclone-0.2.22/src//hfsplusclone.h 2011-03-28 00:19:59.000000000 -0700
+++ partclone-0.2.22/src//hfsplusclone.h 2011-08-05 10:23:56.000000000 -0700
@@ -11,11 +11,10 @@
* (at your option) any later version.
*/
-
-typedef unsigned char UInt8;
-typedef unsigned short int UInt16;
-typedef unsigned long int UInt32;
-typedef unsigned long long int UInt64;
+typedef uint8_t UInt8;
+typedef uint16_t UInt16;
+typedef uint32_t UInt32;
+typedef uint64_t UInt64;
typedef UInt32 HFSCatalogNodeID;