[packages/tigervnc] - updated to 1.4.2 - new source URL - removed obsolete patches - fixed building with xserver 1.17

baggins baggins at pld-linux.org
Mon Feb 23 01:11:59 CET 2015


commit 7004e522b66e5d4f9d1c9b6db1b64e9fc0776105
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Mon Feb 23 01:07:07 2015 +0100

    - updated to 1.4.2
    - new source URL
    - removed obsolete patches
    - fixed building with xserver 1.17

 tigervnc-inputreset.patch      | 383 -----------------------------------------
 tigervnc-rh692048.patch        |  36 ++--
 tigervnc-setcursor-crash.patch |  13 --
 tigervnc-typecast.patch        |  11 --
 tigervnc-xserver-1.15.patch    |  15 --
 tigervnc-xserver-1.16.patch    | 283 ------------------------------
 tigervnc-xserver-1.17.patch    |  44 +++++
 tigervnc-zrle-crash.patch      |  69 --------
 tigervnc.spec                  |  32 ++--
 9 files changed, 72 insertions(+), 814 deletions(-)
---
diff --git a/tigervnc.spec b/tigervnc.spec
index 4d204a9..0cd9cf2 100644
--- a/tigervnc.spec
+++ b/tigervnc.spec
@@ -3,12 +3,12 @@
 Summary:	A TigerVNC remote display system
 Summary(pl.UTF-8):	System zdalnego dostępu TigerVNC
 Name:		tigervnc
-Version:	1.3.1
-Release:	10
+Version:	1.4.2
+Release:	1
 License:	GPL v2
 Group:		X11/Applications/Networking
-Source0:	http://download.sourceforge.net/tigervnc/%{name}-%{version}.tar.gz
-# Source0-md5:	e80b16aa74f1d8e89f284a6aef99955d
+Source0:	https://github.com/TigerVNC/tigervnc/archive/v%{version}.tar.gz?/%{name}-%{version}.tar.gz
+# Source0-md5:	93b935487d0ec33341f079bc402df6b1
 Source1:	%{name}.desktop
 Source2:	vncserver.init
 Source3:	vncserver.sysconfig
@@ -21,16 +21,10 @@ Patch4:		%{name}-ipv6.patch
 Patch5:		%{name}-rh692048.patch
 Patch6:		no-bashizm.patch
 Patch7:		format-security.patch
-Patch8:		%{name}-typecast.patch
-Patch9:		tigervnc-xstartup.patch
-Patch10:	xserver.patch
-Patch11:	tigervnc-getmaster.patch
-Patch12:	tigervnc-setcursor-crash.patch
-Patch13:	tigervnc-xserver-1.15.patch
-Patch14:	tigervnc-zrle-crash.patch
-Patch15:	tigervnc-xserver-1.16.patch
-Patch16:	tigervnc-inputreset.patch
-Patch17:	tigervnc-pointersync.patch
+Patch8:		tigervnc-xstartup.patch
+Patch9:		xserver.patch
+Patch10:	tigervnc-getmaster.patch
+Patch11:	tigervnc-xserver-1.17.patch
 URL:		http://www.tigervnc.com/
 BuildRequires:	ImageMagick
 BuildRequires:	ImageMagick-coder-png
@@ -196,18 +190,12 @@ pozwalający na zdalny dostęp do pulpitu.
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
-%patch9 -p1
+%patch10 -p1
 %patch11 -p1
-%patch12 -p1
-%patch13 -p1
-%patch14 -p1
-%patch15 -p1
-%patch16 -p1
-%patch17 -p1
 
 cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver
 cd unix/xserver
-%patch10 -p1
+%patch9 -p1
 
 %build
 %cmake .
diff --git a/tigervnc-inputreset.patch b/tigervnc-inputreset.patch
deleted file mode 100644
index 58b685f..0000000
--- a/tigervnc-inputreset.patch
+++ /dev/null
@@ -1,383 +0,0 @@
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/Input.cc.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/Input.cc
---- tigervnc-1.3.0/unix/xserver/hw/vnc/Input.cc.inputreset	2013-07-01 13:41:24.000000000 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/Input.cc	2014-07-14 13:08:01.482660946 +0100
-@@ -68,6 +68,9 @@ rfb::BoolParameter avoidShiftNumLock("Av
- 
- #define BUTTONS 7
- 
-+class InputDevice *vncInputDevice;
-+InputDevice InputDevice::singleton;
-+
- /* Event queue is shared between all devices. */
- #if XORG == 15
- static xEvent *eventq = NULL;
-@@ -116,11 +119,13 @@ static void enqueueEvents(DeviceIntPtr d
- }
- #endif /* XORG < 111 */
- 
--InputDevice::InputDevice(rfb::VNCServerST *_server)
--	: server(_server), initialized(false), oldButtonMask(0)
-+InputDevice::InputDevice()
-+	: oldButtonMask(0)
- {
- 	int i;
- 
-+	vncInputDevice = this;
-+
- #if XORG < 111
- 	initEventq();
- #endif
-@@ -195,16 +200,12 @@ void InputDevice::PointerMove(const rfb:
- 	cursorPos = pos;
- }
- 
--void InputDevice::PointerSync(void)
-+const rfb::Point &InputDevice::getPointerPos(void)
- {
--	if (cursorPos.equals(oldCursorPos))
--		return;
--
--	oldCursorPos = cursorPos;
--	server->setCursorPos(cursorPos);
-+	return cursorPos;
- }
- 
--static int pointerProc(DeviceIntPtr pDevice, int onoff)
-+int InputDevice::pointerProc(DeviceIntPtr pDevice, int onoff)
- {
- 	BYTE map[BUTTONS + 1];
- 	DevicePtr pDev = (DevicePtr)pDevice;
-@@ -229,6 +230,8 @@ static int pointerProc(DeviceIntPtr pDev
- 		btn_labels[2] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_RIGHT);
- 		btn_labels[3] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_UP);
- 		btn_labels[4] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_DOWN);
-+		btn_labels[5] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_LEFT);
-+		btn_labels[6] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_RIGHT);
- 
- 		axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_X);
- 		axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y);
-@@ -253,10 +256,9 @@ static int pointerProc(DeviceIntPtr pDev
- 	case DEVICE_OFF:
- 		pDev->on = FALSE;
- 		break;
--#if 0
- 	case DEVICE_CLOSE:
-+		singleton.pointerDev = NULL;
- 		break;
--#endif
- 	}
- 
- 	return Success;
-@@ -269,9 +271,7 @@ static void keyboardBell(int percent, De
- 		vncBell();
- }
- 
--extern void GetInitKeyboardMap(KeySymsPtr keysyms, CARD8 *modmap);
--
--static int keyboardProc(DeviceIntPtr pDevice, int onoff)
-+int InputDevice::keyboardProc(DeviceIntPtr pDevice, int onoff)
- {
- #if XORG < 17
- 	KeySymsRec keySyms;
-@@ -298,6 +298,9 @@ static int keyboardProc(DeviceIntPtr pDe
- 	case DEVICE_OFF:
- 		pDev->on = FALSE;
- 		break;
-+	case DEVICE_CLOSE:
-+		singleton.keyboardDev = NULL;
-+		break;
- 	}
- 
- 	return Success;
-@@ -305,11 +308,9 @@ static int keyboardProc(DeviceIntPtr pDe
- 
- void InputDevice::InitInputDevice(void)
- {
--	if (initialized)
-+	if ((pointerDev != NULL) || (keyboardDev != NULL))
- 		return;
- 
--	initialized = true;
--
- #if XORG < 17
- 	pointerDev = AddInputDevice(
- #if XORG >= 16
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/InputCore.cc.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/InputCore.cc
---- tigervnc-1.3.0/unix/xserver/hw/vnc/InputCore.cc.inputreset	2013-07-01 13:41:24.000000000 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/InputCore.cc	2014-07-14 13:08:01.483660952 +0100
-@@ -174,7 +174,7 @@ KeySym keyboardMap[MAP_LEN * KEYSYMS_PER
- 	XK_Menu, NoSymbol,
- };
- 
--void GetInitKeyboardMap(KeySymsPtr keysyms, CARD8 *modmap)
-+void InputDevice::GetInitKeyboardMap(KeySymsPtr keysyms, CARD8 *modmap)
- {
- 	int i;
- 
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/Input.h.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/Input.h
---- tigervnc-1.3.0/unix/xserver/hw/vnc/Input.h.inputreset	2013-07-01 13:41:24.000000000 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/Input.h	2014-07-14 13:08:01.483660952 +0100
-@@ -29,20 +29,27 @@
- 
- #include <list>
- 
--#include <rfb/VNCServerST.h>
-+#include <rdr/types.h>
-+#include <rfb/Rect.h>
- 
- extern "C" {
- #include "input.h"
-+/* The Xorg headers define macros that wreak havoc with STL */
-+#undef max
- };
- 
- #include "xorg-version.h"
- 
--/* Represents input device (keyboard + pointer) */
-+/*
-+ * Represents input device (keyboard + pointer)
-+ *
-+ * Is a singleton as input devices are global in the X server so
-+ * we do not have one per desktop (i.e. per screen).
-+ */
-+extern class InputDevice *vncInputDevice;
-+
- class InputDevice {
- public:
--	/* Create new InputDevice instance */
--	InputDevice(rfb::VNCServerST *_server);
--
- 	/*
- 	 * Press or release buttons. Relationship between buttonMask and
- 	 * buttons is specified in RFB protocol.
-@@ -52,27 +59,28 @@ public:
- 	/* Move pointer to target location (point coords are absolute). */
- 	void PointerMove(const rfb::Point &point);
- 
--	/*
--	 * Send pointer position to clients. If not called then Move() calls
--	 * won't be visible to VNC clients.
--	 */
--	void PointerSync(void);
-+	/* Get current known location of the pointer */
-+	const rfb::Point &getPointerPos(void);
- 
-+	/* Press or release one or more keys to get the given symbol */
- 	void KeyboardPress(rdr::U32 keysym) { keyEvent(keysym, true); }
- 	void KeyboardRelease(rdr::U32 keysym) { keyEvent(keysym, false); }
- 
- 	/*
--	 * Init input device. This cannot be done in the constructor
--	 * because constructor is called during X server extensions
--	 * initialization. Devices must be initialized after core
--	 * pointer/keyboard initialization which is actually after extesions
--	 * initialization. Check InitExtensions(), InitCoreDevices() and
--	 * InitInput() calls in dix/main.c. Instead it is called from
--	 * XserverDesktop at an appropriate time.
-+	 * Init input device.
-+	 * This has to be called after core pointer/keyboard
-+	 * initialization which unfortunately is after extesions
-+	 * initialization (which means we cannot call it in
-+	 * vncExtensionInit(). Check InitExtensions(),
-+	 * InitCoreDevices() and InitInput() calls in dix/main.c.
-+	 * Instead we call it from XserverDesktop at an appropriate
-+	 * time.
- 	 */
- 	void InitInputDevice(void);
- 
- private:
-+	InputDevice();
-+
- 	void keyEvent(rdr::U32 keysym, bool down);
- 
- 	/* Backend dependent functions below here */
-@@ -96,22 +104,28 @@ private:
- 	KeyCode addKeysym(KeySym keysym, unsigned state);
- 
- private:
-+	static int pointerProc(DeviceIntPtr pDevice, int onoff);
-+	static int keyboardProc(DeviceIntPtr pDevice, int onoff);
-+
- #if XORG >= 17
- 	static void vncXkbProcessDeviceEvent(int screenNum,
- 	                                     InternalEvent *event,
- 	                                     DeviceIntPtr dev);
-+#else
-+	static void GetInitKeyboardMap(KeySymsPtr keysyms, CARD8 *modmap);
- #endif
- 
- private:
--	rfb::VNCServerST *server;
--	bool initialized;
- 	DeviceIntPtr keyboardDev;
- 	DeviceIntPtr pointerDev;
- 
- 	int oldButtonMask;
--	rfb::Point cursorPos, oldCursorPos;
-+	rfb::Point cursorPos;
- 
- 	KeySym pressedKeys[256];
-+
-+private:
-+	static InputDevice singleton;
- };
- 
- #endif
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc
---- tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.inputreset	2014-07-14 13:07:53.145619157 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc	2014-07-14 13:08:01.484660958 +0100
-@@ -42,18 +42,6 @@ extern "C" {
- #undef class
- }
- 
--#if XORG < 19
--static int vncXkbScreenPrivateKeyIndex;
--static DevPrivateKey vncXkbScreenPrivateKey = &vncXkbScreenPrivateKeyIndex;
--#else
--static DevPrivateKeyRec vncXkbPrivateKeyRec;
--#define vncXkbScreenPrivateKey (&vncXkbPrivateKeyRec)
--#endif
--
--#define vncXkbScreenPrivate(pScreen) \
--	(*(InputDevice**) dixLookupPrivate(&(pScreen)->devPrivates, \
--	                                   vncXkbScreenPrivateKey))
--
- #ifndef KEYBOARD_OR_FLOAT
- #define KEYBOARD_OR_FLOAT MASTER_KEYBOARD
- #endif
-@@ -209,18 +197,6 @@ static unsigned XkbKeyEffectiveGroup(Xkb
- 
- void InputDevice::PrepareInputDevices(void)
- {
--#if XORG < 19
--	if (!dixRequestPrivate(vncXkbScreenPrivateKey, sizeof(InputDevice*)))
--		FatalError("Failed to register TigerVNC XKB screen key\n");
--#else
--	if (!dixRegisterPrivateKey(vncXkbScreenPrivateKey, PRIVATE_SCREEN,
--	                           sizeof(InputDevice*)))
--		FatalError("Failed to register TigerVNC XKB screen key\n");
--#endif
--
--	for (int scr = 0; scr < screenInfo.numScreens; scr++)
--		vncXkbScreenPrivate(screenInfo.screens[scr]) = this;
--
- 	/*
- 	 * Not ideal since these callbacks do not stack, but it's the only
- 	 * decent way we can reliably catch events for both the slave and
-@@ -633,10 +609,9 @@ void InputDevice::vncXkbProcessDeviceEve
-                                            InternalEvent *event,
-                                            DeviceIntPtr dev)
- {
--	InputDevice *self = vncXkbScreenPrivate(screenInfo.screens[screenNum]);
- 	unsigned int backupctrls;
- 
--	if (event->device_event.sourceid == self->keyboardDev->id) {
-+	if (event->device_event.sourceid == singleton.keyboardDev->id) {
- 		XkbControlsPtr ctrls;
- 
- 		/*
-@@ -658,7 +633,7 @@ void InputDevice::vncXkbProcessDeviceEve
- 
- 	dev->c_public.processInputProc(event, dev);
- 
--	if (event->device_event.sourceid == self->keyboardDev->id) {
-+	if (event->device_event.sourceid == singleton.keyboardDev->id) {
- 		XkbControlsPtr ctrls;
- 
- 		ctrls = dev->key->xkbInfo->desc->ctrls;
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/xf86vncModule.cc.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/xf86vncModule.cc
---- tigervnc-1.3.0/unix/xserver/hw/vnc/xf86vncModule.cc.inputreset	2013-07-01 13:41:24.000000000 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/xf86vncModule.cc	2014-07-14 13:08:01.487660972 +0100
-@@ -112,9 +112,9 @@ static void vncExtensionInitWithParams(I
-           i.param->setParam(val);
-       }
-     }
--
--    vncExtensionInit();
-   }
-+
-+  vncExtensionInit();
- }
- }
- 
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.cc.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.cc
---- tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.cc.inputreset	2014-07-14 13:07:53.140619132 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.cc	2014-07-14 13:08:01.486660967 +0100
-@@ -157,15 +157,12 @@ XserverDesktop::XserverDesktop(ScreenPtr
- 
-   if (httpListener)
-     httpServer = new FileHTTPServer(this);
--
--  inputDevice = new InputDevice(server);
- }
- 
- XserverDesktop::~XserverDesktop()
- {
-   if (!directFbptr)
-     delete [] data;
--  delete inputDevice;
-   delete httpServer;
-   delete server;
- }
-@@ -583,7 +580,7 @@ void XserverDesktop::blockHandler(fd_set
-   // so we abuse the fact that this routine will be called first thing
-   // once the dix is done initialising.
-   // [1] Technically Xvnc has InitInput(), but libvnc.so has nothing.
--  inputDevice->InitInputDevice();
-+  vncInputDevice->InitInputDevice();
- 
-   try {
-     int nextTimeout;
-@@ -691,7 +688,11 @@ void XserverDesktop::wakeupHandler(fd_se
-         }
-       }
- 
--      inputDevice->PointerSync();
-+      // We are responsible for propagating mouse movement between clients
-+      if (!oldCursorPos.equals(vncInputDevice->getPointerPos())) {
-+        oldCursorPos = vncInputDevice->getPointerPos();
-+        server->setCursorPos(oldCursorPos);
-+      }
-     }
- 
-     // Then let the timers do some processing. Rescheduling is done in
-@@ -818,8 +819,8 @@ void XserverDesktop::approveConnection(v
- 
- void XserverDesktop::pointerEvent(const Point& pos, int buttonMask)
- {
--  inputDevice->PointerMove(pos);
--  inputDevice->PointerButtonAction(buttonMask);
-+  vncInputDevice->PointerMove(pos);
-+  vncInputDevice->PointerButtonAction(buttonMask);
- }
- 
- void XserverDesktop::clientCutText(const char* str, int len)
-@@ -1136,7 +1137,7 @@ void XserverDesktop::lookup(int index, i
- void XserverDesktop::keyEvent(rdr::U32 keysym, bool down)
- {
- 	if (down)
--		inputDevice->KeyboardPress(keysym);
-+		vncInputDevice->KeyboardPress(keysym);
- 	else
--		inputDevice->KeyboardRelease(keysym);
-+		vncInputDevice->KeyboardRelease(keysym);
- }
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.h.inputreset tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.h
---- tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.h.inputreset	2013-07-01 13:41:24.000000000 +0100
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/XserverDesktop.h	2014-07-14 13:08:01.486660967 +0100
-@@ -133,7 +133,6 @@ private:
- #endif
- 
-   ScreenPtr pScreen;
--  InputDevice *inputDevice;
-   rfb::VNCServerST* server;
-   rfb::HTTPServer* httpServer;
-   network::TcpListener* listener;
-@@ -153,5 +152,7 @@ private:
-   typedef std::map<RROutputPtr, rdr::U32> OutputIdMap;
-   OutputIdMap outputIdMap;
- #endif
-+
-+  rfb::Point oldCursorPos;
- };
- #endif
diff --git a/tigervnc-rh692048.patch b/tigervnc-rh692048.patch
index 924c1cf..310cb1b 100644
--- a/tigervnc-rh692048.patch
+++ b/tigervnc-rh692048.patch
@@ -1,19 +1,19 @@
-diff -up tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityClient.cxx.rh690245 tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityClient.cxx
---- tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityClient.cxx.rh690245	2011-02-21 14:14:16.000000000 +0100
-+++ tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityClient.cxx	2011-03-31 09:47:34.519099718 +0200
-@@ -45,7 +45,7 @@ StringParameter SecurityClient::secTypes
- ("SecurityTypes",
-  "Specify which security scheme to use (None, VncAuth)",
+diff -up tigervnc-1.4.2/common/rfb/SecurityClient.cxx.rh692048 tigervnc-1.4.2/common/rfb/SecurityClient.cxx
+--- tigervnc-1.4.2/common/rfb/SecurityClient.cxx.rh692048	2015-02-12 18:32:50.168861186 +0000
++++ tigervnc-1.4.2/common/rfb/SecurityClient.cxx	2015-02-12 18:33:13.168003696 +0000
+@@ -49,7 +49,7 @@ StringParameter SecurityClient::secTypes
+ #endif
+  ")",
  #ifdef HAVE_GNUTLS
 - "X509Plain,TLSPlain,X509Vnc,TLSVnc,X509None,TLSNone,VncAuth,None",
 + "VeNCrypt,X509Plain,TLSPlain,X509Vnc,TLSVnc,X509None,TLSNone,VncAuth,None",
  #else
   "VncAuth,None",
  #endif
-diff -up tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx.rh690245 tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx
---- tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx.rh690245	2011-02-21 14:14:16.000000000 +0100
-+++ tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx	2011-03-31 09:47:34.519099718 +0200
-@@ -67,7 +67,6 @@ const std::list<rdr::U8> Security::GetEn
+diff -up tigervnc-1.4.2/common/rfb/Security.cxx.rh692048 tigervnc-1.4.2/common/rfb/Security.cxx
+--- tigervnc-1.4.2/common/rfb/Security.cxx.rh692048	2015-01-23 23:37:23.000000000 +0000
++++ tigervnc-1.4.2/common/rfb/Security.cxx	2015-02-12 18:32:50.168861186 +0000
+@@ -68,7 +68,6 @@ const std::list<rdr::U8> Security::GetEn
    list<rdr::U8> result;
    list<U32>::iterator i;
  
@@ -21,7 +21,7 @@ diff -up tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx.rh690245 tigerv
    for (i = enabledSecTypes.begin(); i != enabledSecTypes.end(); i++)
      if (*i < 0x100)
        result.push_back(*i);
-@@ -105,8 +104,6 @@ bool Security::IsSupported(U32 secType)
+@@ -106,8 +105,6 @@ bool Security::IsSupported(U32 secType)
    for (i = enabledSecTypes.begin(); i != enabledSecTypes.end(); i++)
      if (*i == secType)
        return true;
@@ -30,14 +30,14 @@ diff -up tigervnc-1.0.90-20110314svn4359/common/rfb/Security.cxx.rh690245 tigerv
  
    return false;
  }
-diff -up tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityServer.cxx.rh690245 tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityServer.cxx
---- tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityServer.cxx.rh690245	2011-02-21 14:50:17.000000000 +0100
-+++ tigervnc-1.0.90-20110314svn4359/common/rfb/SecurityServer.cxx	2011-03-31 10:06:43.595362302 +0200
-@@ -39,7 +39,7 @@ StringParameter SecurityServer::secTypes
- ("SecurityTypes",
-  "Specify which security scheme to use (None, VncAuth)",
+diff -up tigervnc-1.4.2/common/rfb/SecurityServer.cxx.rh692048 tigervnc-1.4.2/common/rfb/SecurityServer.cxx
+--- tigervnc-1.4.2/common/rfb/SecurityServer.cxx.rh692048	2015-02-12 18:32:50.168861186 +0000
++++ tigervnc-1.4.2/common/rfb/SecurityServer.cxx	2015-02-12 18:33:24.977076868 +0000
+@@ -43,7 +43,7 @@ StringParameter SecurityServer::secTypes
+ #endif
+  ")",
  #ifdef HAVE_GNUTLS
-- "VncAuth,TLSVnc",
+- "TLSVnc,VncAuth",
 + "VncAuth",
  #else
   "VncAuth",
diff --git a/tigervnc-setcursor-crash.patch b/tigervnc-setcursor-crash.patch
deleted file mode 100644
index 1efbd0e..0000000
--- a/tigervnc-setcursor-crash.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/XserverDesktop.cc.jx tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/XserverDesktop.cc
---- tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/XserverDesktop.cc.jx	2012-08-27 09:02:47.000000000 -0400
-+++ tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/XserverDesktop.cc	2013-06-17 09:42:14.310725996 -0400
-@@ -479,6 +479,9 @@ void XserverDesktop::setCursor(CursorPtr
-       }
-     } else {
- #endif
-+      if (!cmap)
-+	return;
-+
-       xColorItem fg, bg;
-       fg.red   = cursor->foreRed;
-       fg.green = cursor->foreGreen;
diff --git a/tigervnc-typecast.patch b/tigervnc-typecast.patch
deleted file mode 100644
index 23188fb..0000000
--- a/tigervnc-typecast.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- tigervnc-1.3.0/unix/xserver/hw/vnc/vncExtInit.cc.orig	2013-07-18 14:46:36.000000000 +0000
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/vncExtInit.cc	2013-07-18 14:47:00.757116173 +0000
-@@ -1070,7 +1070,7 @@
- {
-   REQUEST(xVncExtApproveConnectReq);
-   REQUEST_SIZE_MATCH(xVncExtApproveConnectReq);
--  if (queryConnectId == (void*)stuff->opaqueId) {
-+  if (queryConnectId == (void*)(intptr_t)stuff->opaqueId) {
-     for (int scr = 0; scr < screenInfo.numScreens; scr++) {
-       if (desktop[scr]) {
-         desktop[scr]->approveConnection(queryConnectId, stuff->approve,
diff --git a/tigervnc-xserver-1.15.patch b/tigervnc-xserver-1.15.patch
deleted file mode 100644
index d070a70..0000000
--- a/tigervnc-xserver-1.15.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h.jx tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h
---- tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h.jx	2013-07-01 08:41:24.000000000 -0400
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h	2013-11-07 11:39:49.749992669 -0500
-@@ -44,8 +44,10 @@
- #define XORG 113
- #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (14 * 100000) + (99 * 1000))
- #define XORG 114
-+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (15 * 100000) + (99 * 1000))
-+#define XORG 115
- #else
--#error "X.Org newer than 1.14 is not supported"
-+#error "X.Org newer than 1.15 is not supported"
- #endif
- 
- #endif
diff --git a/tigervnc-xserver-1.16.patch b/tigervnc-xserver-1.16.patch
deleted file mode 100644
index 349e693..0000000
--- a/tigervnc-xserver-1.16.patch
+++ /dev/null
@@ -1,283 +0,0 @@
-diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h.jx tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h
---- tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h.jx	2013-07-01 08:41:24.000000000 -0400
-+++ tigervnc-1.3.0/unix/xserver/hw/vnc/xorg-version.h	2013-11-07 11:39:49.749992669 -0500
-@@ -44,8 +44,10 @@
- #define XORG 114
- #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (15 * 100000) + (99 * 1000))
- #define XORG 115
-+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (16 * 100000) + (99 * 1000))
-+#define XORG 116
- #else
--#error "X.Org newer than 1.15 is not supported"
-+#error "X.Org newer than 1.16 is not supported"
- #endif
- 
- #endif
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/Input.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/Input.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/Input.cc.116	2013-05-30 16:53:40.000000000 +0200
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/Input.cc	2014-04-28 16:55:02.591440218 +0200
-@@ -262,7 +262,7 @@ static int pointerProc(DeviceIntPtr pDev
- 	return Success;
- }
- 
--static void keyboardBell(int percent, DeviceIntPtr device, pointer ctrl,
-+static void keyboardBell(int percent, DeviceIntPtr device, void * ctrl,
- 			 int class_)
- {
- 	if (percent > 0)
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/XserverDesktop.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/XserverDesktop.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/XserverDesktop.cc.116	2014-04-28 16:55:02.530441812 +0200
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/XserverDesktop.cc	2014-04-28 16:55:02.592440192 +0200
-@@ -48,7 +48,7 @@ extern "C" {
- #define public c_public
- #define class c_class
- 
--extern char *display;
-+extern const char *display;
- 
- #include "colormapst.h"
- #ifdef RANDR
-@@ -174,7 +174,7 @@ void XserverDesktop::serverReset(ScreenP
- {
-   pScreen = pScreen_;
-   int i;
--  pointer retval;
-+  void * retval;
- 
- #if XORG >= 17
- #define dixLookupResource dixLookupResourceByType
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/vncExtInit.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/vncExtInit.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/vncExtInit.cc.116	2014-04-28 16:55:02.524441969 +0200
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/vncExtInit.cc	2014-04-28 16:55:02.592440192 +0200
-@@ -65,18 +65,18 @@ extern "C" {
- 
-   extern void vncExtensionInit();
-   static void vncResetProc(ExtensionEntry* extEntry);
--  static void vncBlockHandler(pointer data, OSTimePtr t, pointer readmask);
--  static void vncWakeupHandler(pointer data, int nfds, pointer readmask);
-+  static void vncBlockHandler(void * data, OSTimePtr t, void * readmask);
-+  static void vncWakeupHandler(void * data, int nfds, void * readmask);
-   void vncWriteBlockHandler(fd_set *fds);
-   void vncWriteWakeupHandler(int nfds, fd_set *fds);
--  static void vncClientStateChange(CallbackListPtr*, pointer, pointer);
-+  static void vncClientStateChange(CallbackListPtr*, void *, void *);
-   static void SendSelectionChangeEvent(Atom selection);
-   static int ProcVncExtDispatch(ClientPtr client);
-   static int SProcVncExtDispatch(ClientPtr client);
--  static void vncSelectionCallback(CallbackListPtr *callbacks, pointer data,
--				   pointer args);
-+  static void vncSelectionCallback(CallbackListPtr *callbacks, void * data,
-+				   void * args);
- 
--  extern char *display;
-+  extern const char *display;
-   extern char *listenaddr;
- }
- 
-@@ -284,7 +284,7 @@ static void vncResetProc(ExtensionEntry*
- {
- }
- 
--static void vncSelectionCallback(CallbackListPtr *callbacks, pointer data, pointer args)
-+static void vncSelectionCallback(CallbackListPtr *callbacks, void * data, void * args)
- {
-   SelectionInfoRec *info = (SelectionInfoRec *) args;
-   Selection *selection = info->selection;
-@@ -301,7 +301,7 @@ static void vncWriteWakeupHandlerFallbac
- // selections have changed, and if so, notify any interested X clients.
- //
- 
--static void vncBlockHandler(pointer data, OSTimePtr timeout, pointer readmask)
-+static void vncBlockHandler(void * data, OSTimePtr timeout, void * readmask)
- {
-   fd_set* fds = (fd_set*)readmask;
- 
-@@ -312,7 +312,7 @@ static void vncBlockHandler(pointer data
-       desktop[scr]->blockHandler(fds, timeout);
- }
- 
--static void vncWakeupHandler(pointer data, int nfds, pointer readmask)
-+static void vncWakeupHandler(void * data, int nfds, void * readmask)
- {
-   fd_set* fds = (fd_set*)readmask;
- 
-@@ -402,7 +402,7 @@ static void vncWriteWakeupHandlerFallbac
-   vncWriteWakeupHandler(ret, &fallbackFds);
- }
- 
--static void vncClientStateChange(CallbackListPtr*, pointer, pointer p)
-+static void vncClientStateChange(CallbackListPtr*, void *, void * p)
- {
-   ClientPtr client = ((NewClientInfoRec*)p)->client;
-   if (client->clientState == ClientStateGone) {
-@@ -468,7 +468,7 @@ void vncClientCutText(const char* str, i
- 
- 
- static CARD32 queryConnectTimerCallback(OsTimerPtr timer,
--                                        CARD32 now, pointer arg)
-+                                        CARD32 now, void * arg)
- {
-   if (queryConnectTimeout)
-     queryConnectDesktop->approveConnection(queryConnectId, false, "The attempt to prompt the user to accept the connection failed");
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/vncHooks.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/vncHooks.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/vncHooks.cc.116	2013-05-22 14:57:16.000000000 +0200
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/vncHooks.cc	2014-04-28 16:55:02.593440166 +0200
-@@ -91,8 +91,8 @@ typedef struct {
- } vncHooksScreenRec, *vncHooksScreenPtr;
- 
- typedef struct {
--    GCFuncs *wrappedFuncs;
--    GCOps *wrappedOps;
-+    const GCFuncs *wrappedFuncs;
-+    const GCOps *wrappedOps;
- } vncHooksGCRec, *vncHooksGCPtr;
- 
- #if XORG == 15
-@@ -141,11 +141,11 @@ static Bool vncHooksDisplayCursor(
- #endif
- 				  ScreenPtr pScreen, CursorPtr cursor);
- #if XORG < 112
--static void vncHooksBlockHandler(int i, pointer blockData, pointer pTimeout,
--                                 pointer pReadmask);
-+static void vncHooksBlockHandler(int i, void * blockData, void * pTimeout,
-+                                 void * pReadmask);
- #else
--static void vncHooksBlockHandler(ScreenPtr pScreen, pointer pTimeout,
--                                 pointer pReadmask);
-+static void vncHooksBlockHandler(ScreenPtr pScreen, void * pTimeout,
-+                                 void * pReadmask);
- #endif
- #ifdef RENDER
- static void vncHooksComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, 
-@@ -174,7 +174,7 @@ static void vncHooksValidateGC(GCPtr pGC
- static void vncHooksChangeGC(GCPtr pGC, unsigned long mask);
- static void vncHooksCopyGC(GCPtr src, unsigned long mask, GCPtr dst);
- static void vncHooksDestroyGC(GCPtr pGC);
--static void vncHooksChangeClip(GCPtr pGC, int type, pointer pValue,int nrects);
-+static void vncHooksChangeClip(GCPtr pGC, int type, void * pValue,int nrects);
- static void vncHooksDestroyClip(GCPtr pGC);
- static void vncHooksCopyClip(GCPtr dst, GCPtr src);
- 
-@@ -226,10 +226,10 @@ static void vncHooksImageText16(Drawable
-                                 int count, unsigned short *chars);
- static void vncHooksImageGlyphBlt(DrawablePtr pDrawable, GCPtr pGC, int x,
-                                   int y, unsigned int nglyph,
--                                  CharInfoPtr *ppci, pointer pglyphBase);
-+                                  CharInfoPtr *ppci, void * pglyphBase);
- static void vncHooksPolyGlyphBlt(DrawablePtr pDrawable, GCPtr pGC, int x,
-                                  int y, unsigned int nglyph,
--                                 CharInfoPtr *ppci, pointer pglyphBase);
-+                                 CharInfoPtr *ppci, void * pglyphBase);
- static void vncHooksPushPixels(GCPtr pGC, PixmapPtr pBitMap,
-                                DrawablePtr pDrawable, int w, int h, int x,
-                                int y);
-@@ -575,11 +575,11 @@ static Bool vncHooksDisplayCursor(
- // these are just drawing the cursor.
- 
- #if XORG < 112
--static void vncHooksBlockHandler(int i, pointer blockData, pointer pTimeout,
--                                 pointer pReadmask)
-+static void vncHooksBlockHandler(int i, void * blockData, void * pTimeout,
-+                                 void * pReadmask)
- #else
--static void vncHooksBlockHandler(ScreenPtr pScreen_, pointer pTimeout,
--                                 pointer pReadmask)
-+static void vncHooksBlockHandler(ScreenPtr pScreen_, void * pTimeout,
-+                                 void * pReadmask)
- #endif
- {
- #if XORG < 112
-@@ -914,7 +914,7 @@ static void vncHooksDestroyGC(GCPtr pGC)
-   GCFuncUnwrapper u(pGC);
-   (*pGC->funcs->DestroyGC) (pGC);
- }
--static void vncHooksChangeClip(GCPtr pGC, int type, pointer pValue, int nrects)
-+static void vncHooksChangeClip(GCPtr pGC, int type, void * pValue, int nrects)
- {
-   GCFuncUnwrapper u(pGC);
-   (*pGC->funcs->ChangeClip) (pGC, type, pValue, nrects);
-@@ -954,7 +954,7 @@ public:
-   }
-   GCPtr pGC;
-   vncHooksGCPtr vncHooksGC;
--  GCFuncs* oldFuncs;
-+  const GCFuncs* oldFuncs;
-   ScreenPtr pScreen;
- };
- 
-@@ -1793,7 +1793,7 @@ static void vncHooksImageText16(Drawable
- 
- static void vncHooksImageGlyphBlt(DrawablePtr pDrawable, GCPtr pGC, int x,
-                                   int y, unsigned int nglyph,
--                                  CharInfoPtr *ppci, pointer pglyphBase)
-+                                  CharInfoPtr *ppci, void * pglyphBase)
- {
-   GC_OP_UNWRAPPER(pDrawable, pGC, ImageGlyphBlt);
- 
-@@ -1819,7 +1819,7 @@ static void vncHooksImageGlyphBlt(Drawab
- 
- static void vncHooksPolyGlyphBlt(DrawablePtr pDrawable, GCPtr pGC, int x,
-                                  int y, unsigned int nglyph,
--                                 CharInfoPtr *ppci, pointer pglyphBase)
-+                                 CharInfoPtr *ppci, void * pglyphBase)
- {
-   GC_OP_UNWRAPPER(pDrawable, pGC, PolyGlyphBlt);
- 
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/xf86vncModule.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/xf86vncModule.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/xf86vncModule.cc.116	2013-03-14 18:52:53.000000000 +0100
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/xf86vncModule.cc	2014-04-28 16:55:02.593440166 +0200
-@@ -81,11 +81,11 @@ static XF86ModuleVersionInfo vncVersRec
- 
- _X_EXPORT XF86ModuleData vncModuleData = { &vncVersRec, vncSetup, NULL };
- 
--static pointer
--vncSetup(pointer module, pointer opts, int *errmaj, int *errmin) {
--    LoadExtension(&vncExt, FALSE);
-+static void *
-+vncSetup(void * module, void * opts, int *errmaj, int *errmin) {
-+    LoadExtensionList(&vncExt, 1, FALSE);
-     /* Need a non-NULL return value to indicate success */
--    return (pointer)1;
-+    return (void *)1;
- }
- 
- static void vncExtensionInitWithParams(INITARGS)
-diff -up tigervnc-1.3.1/unix/xserver/hw/vnc/xvnc.cc.116 tigervnc-1.3.1/unix/xserver/hw/vnc/xvnc.cc
---- tigervnc-1.3.1/unix/xserver/hw/vnc/xvnc.cc.116	2014-03-19 13:11:09.000000000 +0100
-+++ tigervnc-1.3.1/unix/xserver/hw/vnc/xvnc.cc	2014-04-28 16:53:12.580314921 +0200
-@@ -103,7 +103,7 @@ extern "C" {
-                        "See http://www.tigervnc.org for information on TigerVNC.\n")
- 
- 
--extern char *display;
-+extern const char *display;
- extern int monitorResolution;
- 
- #define VFB_DEFAULT_WIDTH  1024
-@@ -762,7 +762,7 @@ vfbUninstallColormap(ColormapPtr pmap)
- 	    curpmap = (ColormapPtr) LookupIDByType(pmap->pScreen->defColormap,
- 						   RT_COLORMAP);
- #else
--	    dixLookupResourceByType((pointer *) &curpmap, pmap->pScreen->defColormap,
-+	    dixLookupResourceByType((void * *) &curpmap, pmap->pScreen->defColormap,
- 				    RT_COLORMAP, serverClient, DixUnknownAccess);
- #endif
- 	    (*pmap->pScreen->InstallColormap)(curpmap);
-@@ -1597,7 +1597,7 @@ vfbScreenInit(ScreenPtr pScreen, int arg
- } /* end vfbScreenInit */
- 
- 
--static void vfbClientStateChange(CallbackListPtr*, pointer, pointer) {
-+static void vfbClientStateChange(CallbackListPtr*, void *, void *) {
-   dispatchException &= ~DE_RESET;
- }
-  
-@@ -1625,7 +1625,7 @@ InitOutput(ScreenInfo *screenInfo, int a
- #if XORG >= 113
- #ifdef GLXEXT
-     if (serverGeneration == 1)
--        LoadExtension(&glxExt, TRUE);
-+        LoadExtensionList(&glxExt, 1, TRUE);
- #endif
- #endif
- 
diff --git a/tigervnc-xserver-1.17.patch b/tigervnc-xserver-1.17.patch
new file mode 100644
index 0000000..c5dd67b
--- /dev/null
+++ b/tigervnc-xserver-1.17.patch
@@ -0,0 +1,44 @@
+diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h.xserver117 tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h
+--- tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h.xserver117	2015-01-23 23:37:23.000000000 +0000
++++ tigervnc-1.4.2/unix/xserver/hw/vnc/xorg-version.h	2015-02-13 17:35:29.847294663 +0000
+@@ -48,8 +48,10 @@
+ #define XORG 115
+ #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (16 * 100000) + (99 * 1000))
+ #define XORG 116
++#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (17 * 100000) + (99 * 1000))
++#define XORG 117
+ #else
+-#error "X.Org newer than 1.16 is not supported"
++#error "X.Org newer than 1.17 is not supported"
+ #endif
+ 
+ #endif
+diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc.xserver117 tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc
+--- tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc.xserver117	2015-01-23 23:37:23.000000000 +0000
++++ tigervnc-1.4.2/unix/xserver/hw/vnc/xvnc.cc	2015-02-13 17:35:27.963265774 +0000
+@@ -717,9 +717,9 @@ vfbInstallColormap(ColormapPtr pmap)
+ 	entries = pmap->pVisual->ColormapEntries;
+ 	pVisual = pmap->pVisual;
+ 
+-	ppix = (Pixel *)xalloc(entries * sizeof(Pixel));
+-	prgb = (xrgb *)xalloc(entries * sizeof(xrgb));
+-	defs = (xColorItem *)xalloc(entries * sizeof(xColorItem));
++	ppix = (Pixel *)malloc(entries * sizeof(Pixel));
++	prgb = (xrgb *)malloc(entries * sizeof(xrgb));
++	defs = (xColorItem *)malloc(entries * sizeof(xColorItem));
+ 
+ 	for (i = 0; i < entries; i++)  ppix[i] = i;
+ 	/* XXX truecolor */
+@@ -738,9 +738,9 @@ vfbInstallColormap(ColormapPtr pmap)
+ 	}
+ 	(*pmap->pScreen->StoreColors)(pmap, entries, defs);
+ 	
+-	xfree(ppix);
+-	xfree(prgb);
+-	xfree(defs);
++	free(ppix);
++	free(prgb);
++	free(defs);
+     }
+ }
+ 
diff --git a/tigervnc-zrle-crash.patch b/tigervnc-zrle-crash.patch
deleted file mode 100644
index 74545d7..0000000
--- a/tigervnc-zrle-crash.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff -up tigervnc-1.3.0/common/rfb/ZRLEEncoder.cxx.zrle-crash tigervnc-1.3.0/common/rfb/ZRLEEncoder.cxx
---- tigervnc-1.3.0/common/rfb/ZRLEEncoder.cxx.zrle-crash	2013-07-01 13:41:59.000000000 +0100
-+++ tigervnc-1.3.0/common/rfb/ZRLEEncoder.cxx	2013-12-12 17:30:48.510007365 +0000
-@@ -55,16 +55,19 @@ Encoder* ZRLEEncoder::create(SMsgWriter*
- }
- 
- ZRLEEncoder::ZRLEEncoder(SMsgWriter* writer_)
--  : writer(writer_), zos(0,0,zlibLevel)
-+  : writer(writer_)
- {
-   if (sharedMos)
-     mos = sharedMos;
-   else
-     mos = new rdr::MemOutStream(129*1024);
-+
-+  zos = new rdr::ZlibOutStream(0, 0, zlibLevel);
- }
- 
- ZRLEEncoder::~ZRLEEncoder()
- {
-+  delete zos;
-   if (!sharedMos)
-     delete mos;
- }
-@@ -78,10 +81,10 @@ bool ZRLEEncoder::writeRect(const Rect&
- 
-   switch (writer->bpp()) {
-   case 8:
--    wroteAll = zrleEncode8(r, mos, &zos, imageBuf, maxLen, actual, ig);
-+    wroteAll = zrleEncode8(r, mos, zos, imageBuf, maxLen, actual, ig);
-     break;
-   case 16:
--    wroteAll = zrleEncode16(r, mos, &zos, imageBuf, maxLen, actual, ig);
-+    wroteAll = zrleEncode16(r, mos, zos, imageBuf, maxLen, actual, ig);
-     break;
-   case 32:
-     {
-@@ -94,16 +97,16 @@ bool ZRLEEncoder::writeRect(const Rect&
-       if ((fitsInLS3Bytes && pf.isLittleEndian()) ||
-           (fitsInMS3Bytes && pf.isBigEndian()))
-       {
--        wroteAll = zrleEncode24A(r, mos, &zos, imageBuf, maxLen, actual, ig);
-+        wroteAll = zrleEncode24A(r, mos, zos, imageBuf, maxLen, actual, ig);
-       }
-       else if ((fitsInLS3Bytes && pf.isBigEndian()) ||
-                (fitsInMS3Bytes && pf.isLittleEndian()))
-       {
--        wroteAll = zrleEncode24B(r, mos, &zos, imageBuf, maxLen, actual, ig);
-+        wroteAll = zrleEncode24B(r, mos, zos, imageBuf, maxLen, actual, ig);
-       }
-       else
-       {
--        wroteAll = zrleEncode32(r, mos, &zos, imageBuf, maxLen, actual, ig);
-+        wroteAll = zrleEncode32(r, mos, zos, imageBuf, maxLen, actual, ig);
-       }
-       break;
-     }
-diff -up tigervnc-1.3.0/common/rfb/ZRLEEncoder.h.zrle-crash tigervnc-1.3.0/common/rfb/ZRLEEncoder.h
---- tigervnc-1.3.0/common/rfb/ZRLEEncoder.h.zrle-crash	2013-07-01 13:42:01.000000000 +0100
-+++ tigervnc-1.3.0/common/rfb/ZRLEEncoder.h	2013-12-12 17:30:48.510007365 +0000
-@@ -45,7 +45,7 @@ namespace rfb {
-   private:
-     ZRLEEncoder(SMsgWriter* writer);
-     SMsgWriter* writer;
--    rdr::ZlibOutStream zos;
-+    rdr::ZlibOutStream* zos;
-     rdr::MemOutStream* mos;
-     static rdr::MemOutStream* sharedMos;
-     static int maxLen;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/tigervnc.git/commitdiff/7004e522b66e5d4f9d1c9b6db1b64e9fc0776105




More information about the pld-cvs-commit mailing list