mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice-common
synced 2025-12-28 16:14:34 +00:00
ppc: Fix lz magic endianess
Commitd39dfbfechanges lz magic to be always treated as LE when encoded. Runtime conversion from a string to uint32 is storing the magic with the same endianness on both LE and BE machines. This requires aditional byte swap when sending magic between LE/BE machines. Changing lz magic to a constant will ensure, that it will be always stored in native endianness, and the second byte swap won't be needed. This commit revertsd39dfbfechanges in lz.c while keeping the rest. They will be needed in future commit for quic.c
This commit is contained in:
parent
c04d4d55bc
commit
5a7e5876e6
@ -47,8 +47,6 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
#include "spice_common.h"
|
||||
#include "lz.h"
|
||||
|
||||
@ -539,7 +537,7 @@ int lz_encode(LzContext *lz, LzImageType type, int width, int height, int top_do
|
||||
encoder->usr->error(encoder->usr, "lz encoder reading image segments failed\n");
|
||||
}
|
||||
|
||||
encode_32(encoder, GUINT32_TO_LE(LZ_MAGIC));
|
||||
encode_32(encoder, LZ_MAGIC);
|
||||
encode_32(encoder, LZ_VERSION);
|
||||
encode_32(encoder, type);
|
||||
encode_32(encoder, width);
|
||||
|
||||
@ -63,7 +63,8 @@ verify(SPICE_N_ELEMENTS(IS_IMAGE_TYPE_RGB) == (LZ_IMAGE_TYPE_A8 + 1));
|
||||
verify(SPICE_N_ELEMENTS(PLT_PIXELS_PER_BYTE) == (LZ_IMAGE_TYPE_PLT8 + 1));
|
||||
verify(SPICE_N_ELEMENTS(RGB_BYTES_PER_PIXEL) == (LZ_IMAGE_TYPE_A8 + 1));
|
||||
|
||||
#define LZ_MAGIC (*(uint32_t *)"LZ ")
|
||||
/* ASCII "LZ " */
|
||||
#define LZ_MAGIC 0x20205a4c
|
||||
#define LZ_VERSION_MAJOR 1U
|
||||
#define LZ_VERSION_MINOR 1U
|
||||
#define LZ_VERSION ((LZ_VERSION_MAJOR << 16) | (LZ_VERSION_MINOR & 0xffff))
|
||||
|
||||
Loading…
Reference in New Issue
Block a user