summaryrefslogtreecommitdiff
path: root/archival/gzip.c
diff options
context:
space:
mode:
authorDenis Vlasenko2007-03-15 00:57:01 +0000
committerDenis Vlasenko2007-03-15 00:57:01 +0000
commit972288e62fa0798f59caf209ab58c911d289a8b2 (patch)
tree4d11a46c5e62a35d357fce9659577cecec8ea117 /archival/gzip.c
parentdd2b2f75ae3a826731ae40a79812ebe94c58ac88 (diff)
downloadbusybox-972288e62fa0798f59caf209ab58c911d289a8b2.zip
busybox-972288e62fa0798f59caf209ab58c911d289a8b2.tar.gz
modify ptr_to_globals trick so that we do not violate
type safety (well, sort of ;))
Diffstat (limited to 'archival/gzip.c')
-rw-r--r--archival/gzip.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/archival/gzip.c b/archival/gzip.c
index 9411e17..68f1cc8 100644
--- a/archival/gzip.c
+++ b/archival/gzip.c
@@ -235,7 +235,7 @@ enum {
};
-struct global1 {
+struct globals {
lng block_start;
@@ -343,7 +343,6 @@ struct global1 {
uint32_t crc; /* shift register contents */
};
-extern struct global1 *ptr_to_globals;
#define G1 (*(ptr_to_globals - 1))
@@ -869,7 +868,7 @@ typedef struct tree_desc {
int max_code; /* largest code with non zero frequency */
} tree_desc;
-struct global2 {
+struct globals2 {
ush heap[HEAP_SIZE]; /* heap used to build the Huffman trees */
int heap_len; /* number of elements in the heap */
@@ -956,7 +955,7 @@ struct global2 {
ulg compressed_len; /* total bit length of compressed file */
};
-#define G2ptr ((struct global2*)(ptr_to_globals))
+#define G2ptr ((struct globals2*)(ptr_to_globals))
#define G2 (*G2ptr)
@@ -2048,7 +2047,7 @@ int gzip_main(int argc, char **argv)
}
#endif
- ptr_to_globals = xzalloc(sizeof(struct global1) + sizeof(struct global2));
+ ptr_to_globals = xzalloc(sizeof(struct globals) + sizeof(struct globals2));
ptr_to_globals++;
G2.l_desc.dyn_tree = G2.dyn_ltree;
G2.l_desc.static_tree = G2.static_ltree;