diff --git a/sml/src/sml_number.c b/sml/src/sml_number.c index f120c59..d093868 100644 --- a/sml/src/sml_number.c +++ b/sml/src/sml_number.c @@ -34,7 +34,7 @@ void *sml_number_init(u64 number, unsigned char type, int size) { // Swap bytes of big-endian number so that // memcpy copies the right part if (sml_number_endian() == SML_BIG_ENDIAN) { - sml_number_byte_swap(bytes, sizeof(u64)); + bytes += sizeof(u64) - size; } unsigned char *np = malloc(size);