| ... | ... |
@@ -38,6 +38,7 @@ |
| 38 | 38 |
#endif |
| 39 | 39 |
|
| 40 | 40 |
#include "explode.h" |
| 41 |
+#include "others.h" |
|
| 41 | 42 |
|
| 42 | 43 |
/* NOTE: sorting algo must be stable! */ |
| 43 | 44 |
static void bs(uint8_t *k, uint8_t *v, unsigned int elements) {
|
| ... | ... |
@@ -151,7 +152,7 @@ int explode_init(struct xplstate *X, uint8_t flags) {
|
| 151 | 151 |
} else { \
|
| 152 | 152 |
if(!X->avail_in) return EXPLODE_EBUFF; \ |
| 153 | 153 |
if(X->avail_in>=4) { \
|
| 154 |
- X->bitmap=*(uint32_t *)X->next_in; \ |
|
| 154 |
+ X->bitmap=cli_readint32(X->next_in); \ |
|
| 155 | 155 |
X->bits=31; \ |
| 156 | 156 |
X->next_in+=4; \ |
| 157 | 157 |
X->avail_in-=4; \ |
| ... | ... |
@@ -175,7 +176,7 @@ int explode_init(struct xplstate *X, uint8_t flags) {
|
| 175 | 175 |
if(X->avail_in*8+X->bits<(NUM)) return EXPLODE_EBUFF; \ |
| 176 | 176 |
val=X->bitmap; \ |
| 177 | 177 |
if(X->avail_in>=4) { \
|
| 178 |
- X->bitmap=*(uint32_t *)X->next_in; \ |
|
| 178 |
+ X->bitmap=cli_readint32(X->next_in); \ |
|
| 179 | 179 |
X->next_in+=4; \ |
| 180 | 180 |
X->avail_in-=4; \ |
| 181 | 181 |
val|=(X->bitmap&((1<<((NUM)-X->bits))-1))<<X->bits; \ |
| ... | ... |
@@ -262,7 +263,7 @@ int explode(struct xplstate *X) {
|
| 262 | 262 |
X->next_out++; |
| 263 | 263 |
} else {
|
| 264 | 264 |
SETCASE(EXPLODE_BASEDIST); |
| 265 |
- GETBITS(6+X->largewin); |
|
| 265 |
+ GETBITS(6u+X->largewin); |
|
| 266 | 266 |
X->backbytes=val; |
| 267 | 267 |
X->backsize=0; |
| 268 | 268 |
X->state=EXPLODE_DECODEDISTS; |