summaryrefslogtreecommitdiffstats
path: root/xrdp/xrdp_wm.c
diff options
context:
space:
mode:
authorJay Sorg <jay.sorg@gmail.com>2014-06-23 18:32:12 -0700
committerJay Sorg <jay.sorg@gmail.com>2014-06-23 18:32:12 -0700
commitac4adf483f4e2004f14827ce1d4d6f84a71f0aed (patch)
tree990f95727425fb803c222e3ac7bbfb72a09697c6 /xrdp/xrdp_wm.c
parent00806b55a689ea37f75d40744905754f88084d37 (diff)
downloadxrdp-proprietary-ac4adf483f4e2004f14827ce1d4d6f84a71f0aed.tar.gz
xrdp-proprietary-ac4adf483f4e2004f14827ce1d4d6f84a71f0aed.zip
libxrdp: cursor big endian fix
Diffstat (limited to 'xrdp/xrdp_wm.c')
-rw-r--r--xrdp/xrdp_wm.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/xrdp/xrdp_wm.c b/xrdp/xrdp_wm.c
index 13156ebe..caf55a7d 100644
--- a/xrdp/xrdp_wm.c
+++ b/xrdp/xrdp_wm.c
@@ -259,8 +259,11 @@ xrdp_wm_load_pointer(struct xrdp_wm *self, char *file_name, char *data,
{
if (bpp == 1)
{
- in_uint8a(fs, palette, 8);
-
+ for (i = 0; i < 2; i++)
+ {
+ in_uint32_le(fs, pixel);
+ palette[i] = pixel;
+ }
for (i = 0; i < 32; i++)
{
for (j = 0; j < 32; j++)
@@ -279,8 +282,11 @@ xrdp_wm_load_pointer(struct xrdp_wm *self, char *file_name, char *data,
}
else if (bpp == 4)
{
- in_uint8a(fs, palette, 64);
-
+ for (i = 0; i < 16; i++)
+ {
+ in_uint32_le(fs, pixel);
+ palette[i] = pixel;
+ }
for (i = 0; i < 32; i++)
{
for (j = 0; j < 32; j++)