https://bugzilla.samba.org/show_bug.cgi?id=8308
--- Comment #5 from John <[email protected]> 2014-04-09 04:03:11 UTC --- woops, it's not just a 64bit pointer being treated as 32. When you run macro F_DEPTH(file) you're actually subtracting the size of a 32bit integer, ie 4 bytes, but file is a pointer to structures like this: struct file_struct { const char *dirname; /* The dir info inside the transfer */ time_t modtime; /* When the item was last modified */ uint32 len32; /* Lowest 32 bits of the file's length */ uint16 mode; /* The item's type and permissions */ uint16 flags; /* The FLAG_* bits for this item */ const char basename[1]; /* The basename (AKA filename) follows */ }; The size of file_struct is 32 bytes So when you use the F_DEPTH macro you're subtracting 4 bytes from a pointer that should be decremented 32 bytes at a time.... Still crazy. -- Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. -- Please use reply-all for most replies to avoid omitting the mailing list. To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html
