summaryrefslogtreecommitdiff
path: root/pack-bitmap.h
diff options
context:
space:
mode:
authorKarsten Blees <blees@dcon.de>2014-11-27 05:24:01 (GMT)
committerJunio C Hamano <gitster@pobox.com>2014-12-01 02:07:34 (GMT)
commitb5007211b6582fc38647ff695b5ac51541ea9de8 (patch)
tree4208da1ac8c0929519656f951f43384e8970fa5c /pack-bitmap.h
parent68f4e1fc6abd332726dd281c76dd63ce7d13d7a1 (diff)
downloadgit-b5007211b6582fc38647ff695b5ac51541ea9de8.zip
git-b5007211b6582fc38647ff695b5ac51541ea9de8.tar.gz
git-b5007211b6582fc38647ff695b5ac51541ea9de8.tar.bz2
pack-bitmap: do not use gcc packed attribute
The "__attribute__" flag may be a noop on some compilers. That's OK as long as the code is correct without the attribute, but in this case it is not. We would typically end up with a struct that is 2 bytes too long due to struct padding, breaking both reading and writing of bitmaps. Instead of marshalling the data in a struct, let's just provide helpers for reading and writing the appropriate types. Besides being correct on all platforms, the result is more efficient and simpler to read. Signed-off-by: Karsten Blees <blees@dcon.de> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'pack-bitmap.h')
-rw-r--r--pack-bitmap.h6
1 files changed, 0 insertions, 6 deletions
diff --git a/pack-bitmap.h b/pack-bitmap.h
index 8b7f4e9..487600b 100644
--- a/pack-bitmap.h
+++ b/pack-bitmap.h
@@ -5,12 +5,6 @@
#include "khash.h"
#include "pack-objects.h"
-struct bitmap_disk_entry {
- uint32_t object_pos;
- uint8_t xor_offset;
- uint8_t flags;
-} __attribute__((packed));
-
struct bitmap_disk_header {
char magic[4];
uint16_t version;