> This was failing here until I made the following change:
>
> PackFile_Constant_unpack_number(struct PackFile_Constant *
> self, char * packed, IV packed_size) {
> char * cursor;
> NV value;
> NV * aligned = mem_sys_allocate(sizeof(IV));
Are you sure this is correct? Or this is before the fix.
Allocating NV using sizeof(IV) is strange. I don't see the
need to have aligned temp variable. The following code
will do exact as your code (I believe). The memcpy() can
handle alignment nicely.
PackFile_Constant_unpack_number(struct PackFile_Constant * self, char *
packed, IV packed_size) {
PackFile_Constant_clear(self);
self->type = PFC_NUMBER;
memcpy(&(self->number), packed, sizeof(NV));
return 1;
}
Hong