lcd4linux: fix endian issues with GLCD2USB plugin
authorJonathan McCrohan <jmccrohan@gmail.com>
Wed, 11 Nov 2015 23:02:55 +0000 (23:02 +0000)
committerJonathan McCrohan <jmccrohan@gmail.com>
Wed, 11 Nov 2015 23:07:33 +0000 (23:07 +0000)
Patch submitted by Vladimir Ermakov.

Signed-off-by: Vladimir Ermakov <vooon341@gmail.com>
Signed-off-by: Jonathan McCrohan <jmccrohan@gmail.com>
utils/lcd4linux/Makefile
utils/lcd4linux/patches/173-glcd2usb-bigendian-fix.patch [new file with mode: 0644]

index 626795bf8b5855021548aec7a0765944bbfffca7..cbb8c91351e31b8fb5fe90ec522edfdcef42014f 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=lcd4linux
 PKG_REV:=1203
 PKG_VERSION:=r$(PKG_REV)
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=https://ssl.bulix.org/svn/lcd4linux/trunk/
diff --git a/utils/lcd4linux/patches/173-glcd2usb-bigendian-fix.patch b/utils/lcd4linux/patches/173-glcd2usb-bigendian-fix.patch
new file mode 100644 (file)
index 0000000..97e03c7
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/drv_GLCD2USB.c
++++ b/drv_GLCD2USB.c
+@@ -48,6 +48,7 @@
+ #include <fcntl.h>
+ #include <sys/time.h>
+ #include <usb.h>
++#include <endian.h>
+ #include "debug.h"
+ #include "cfg.h"
+@@ -487,6 +488,9 @@ static int drv_GLCD2USB_start(const char
+       return -1;
+     }
++    buffer.display_info.width = le16toh(buffer.display_info.width);
++    buffer.display_info.height = le16toh(buffer.display_info.height);
++
+     info("%s: display name = %s", Name, buffer.display_info.name);
+     info("%s: display resolution = %d * %d", Name, buffer.display_info.width, buffer.display_info.height);
+     info("%s: display flags: %x", Name, buffer.display_info.flags);