summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorLukas Venhoda <lvenhoda@redhat.com>2015-06-29 14:58:25 +0200
committerChristophe Fergeau <cfergeau@redhat.com>2015-07-02 13:31:28 +0200
commit5a7e5876e6ec718b4288850ea7f94dcd55bdf92c (patch)
treee15b54d62c6a98fdd4df6d1ed38becd20059c6e5 /common
parentc04d4d55bc3373f42c70e7395cfdbd09e3d4c0d5 (diff)
downloadspice-common-5a7e5876e6ec718b4288850ea7f94dcd55bdf92c.tar.gz
spice-common-5a7e5876e6ec718b4288850ea7f94dcd55bdf92c.tar.xz
spice-common-5a7e5876e6ec718b4288850ea7f94dcd55bdf92c.zip
ppc: Fix lz magic endianess
Commit d39dfbfe changes 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 reverts d39dfbfe changes in lz.c while keeping the rest. They will be needed in future commit for quic.c
Diffstat (limited to 'common')
-rw-r--r--common/lz.c4
-rw-r--r--common/lz_common.h3
2 files changed, 3 insertions, 4 deletions
diff --git a/common/lz.c b/common/lz.c
index 2350152..d1c4033 100644
--- a/common/lz.c
+++ b/common/lz.c
@@ -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);
diff --git a/common/lz_common.h b/common/lz_common.h
index 8d4861b..78df003 100644
--- a/common/lz_common.h
+++ b/common/lz_common.h
@@ -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))