Hello community,

here is the log from the commit of package LibVNCServer for openSUSE:Factory 
checked in at 2016-05-31 12:10:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/LibVNCServer (Old)
 and      /work/SRC/openSUSE:Factory/.LibVNCServer.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "LibVNCServer"

Changes:
--------
--- /work/SRC/openSUSE:Factory/LibVNCServer/LibVNCServer.changes        
2015-02-14 13:45:04.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.LibVNCServer.new/LibVNCServer.changes   
2016-05-31 12:10:19.000000000 +0200
@@ -1,0 +2,7 @@
+Tue May 24 17:25:53 UTC 2016 - [email protected]
+
+- Fix build errors of applications using stl_algobase.h and
+  libvncserver's rfbproto.h, e.g. krfb (issue #102)
+  * Add libvncserver-0.9.10-use-namespaced-rfbMax-macro.patch
+
+-------------------------------------------------------------------

New:
----
  libvncserver-0.9.10-use-namespaced-rfbMax-macro.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ LibVNCServer.spec ++++++
--- /var/tmp/diff_new_pack.k3s5Cv/_old  2016-05-31 12:10:20.000000000 +0200
+++ /var/tmp/diff_new_pack.k3s5Cv/_new  2016-05-31 12:10:20.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package LibVNCServer
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -34,6 +34,8 @@
 #PATCH_FIX-OPENSUSE: Use system fast byteswap routines.
 Patch11:        libvncserver-byteswap.patch
 Patch12:        libvncserver-%{version}-ossl.patch
+#PATCH-FIX-UPSTREAM: use namespaced rfbMax macro (avoids conflicts with 
stl_algobase.h), picked from upstream
+Patch13:        libvncserver-0.9.10-use-namespaced-rfbMax-macro.patch
 BuildRequires:  libavahi-devel
 BuildRequires:  libgcrypt-devel
 BuildRequires:  libjpeg-devel
@@ -106,6 +108,7 @@
 # sh ./autogen.sh
 %patch11
 %patch12
+%patch13 -p1
 # fix encoding
 for file in AUTHORS ChangeLog ; do
 mv ${file} ${file}.OLD && \

++++++ libvncserver-0.9.10-use-namespaced-rfbMax-macro.patch ++++++
>From 53cc1fa18a3b96d2c31a145d971017564fca39bb Mon Sep 17 00:00:00 2001
From: Rex Dieter <[email protected]>
Date: Thu, 18 Feb 2016 08:29:07 -0600
Subject: [PATCH] use namespaced rfbMax macro (issue #102)

Not using generic 'max', avoids conflicts with stl_algobase.h
---
 libvncclient/listen.c    | 9 +++------
 libvncserver/httpd.c     | 2 +-
 libvncserver/rfbserver.c | 2 +-
 libvncserver/sockets.c   | 8 ++++----
 rfb/rfbproto.h           | 2 +-
 5 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/libvncclient/listen.c b/libvncclient/listen.c
index 739cd9f..e989d6a 100644
--- a/libvncclient/listen.c
+++ b/libvncclient/listen.c
@@ -30,9 +30,6 @@
 #ifdef WIN32
 #define close closesocket
 #include <winsock2.h>
-#ifdef _MINGW32
-#undef max
-#endif // #ifdef _MINGW32
 #else // #ifdef WIN32
 #include <sys/wait.h>
 #include <sys/utsname.h>
@@ -99,7 +96,7 @@ listenForIncomingConnections(rfbClient* client)
     if(listen6Socket >= 0)
       FD_SET(listen6Socket, &fds);
 
-    r = select(max(listenSocket, listen6Socket)+1, &fds, NULL, NULL, NULL);
+    r = select(rfbMax(listenSocket, listen6Socket)+1, &fds, NULL, NULL, NULL);
 
     if (r > 0) {
       if (FD_ISSET(listenSocket, &fds))
@@ -195,9 +192,9 @@ listenForIncomingConnectionsNoFork(rfbClient* client, int 
timeout)
     FD_SET(client->listen6Sock, &fds);
 
   if (timeout < 0)
-    r = select(max(client->listenSock, client->listen6Sock) +1, &fds, NULL, 
NULL, NULL);
+    r = select(rfbMax(client->listenSock, client->listen6Sock) +1, &fds, NULL, 
NULL, NULL);
   else
-    r = select(max(client->listenSock, client->listen6Sock) +1, &fds, NULL, 
NULL, &to);
+    r = select(rfbMax(client->listenSock, client->listen6Sock) +1, &fds, NULL, 
NULL, &to);
 
   if (r > 0)
     {
diff --git a/libvncserver/httpd.c b/libvncserver/httpd.c
index 2a778e7..236ab3e 100644
--- a/libvncserver/httpd.c
+++ b/libvncserver/httpd.c
@@ -192,7 +192,7 @@ rfbHttpCheckFds(rfbScreenInfoPtr rfbScreen)
     }
     tv.tv_sec = 0;
     tv.tv_usec = 0;
-    nfds = select(max(rfbScreen->httpListen6Sock, 
max(rfbScreen->httpSock,rfbScreen->httpListenSock)) + 1, &fds, NULL, NULL, &tv);
+    nfds = select(rfbMax(rfbScreen->httpListen6Sock, 
rfbMax(rfbScreen->httpSock,rfbScreen->httpListenSock)) + 1, &fds, NULL, NULL, 
&tv);
     if (nfds == 0) {
        return;
     }
diff --git a/libvncserver/rfbserver.c b/libvncserver/rfbserver.c
index 34e1c06..68c2de5 100644
--- a/libvncserver/rfbserver.c
+++ b/libvncserver/rfbserver.c
@@ -369,7 +369,7 @@ rfbNewTCPOrUDPClient(rfbScreenInfoPtr rfbScreen,
       }
 
       FD_SET(sock,&(rfbScreen->allFds));
-               rfbScreen->maxFd = max(sock,rfbScreen->maxFd);
+               rfbScreen->maxFd = rfbMax(sock,rfbScreen->maxFd);
 
       INIT_MUTEX(cl->outputMutex);
       INIT_MUTEX(cl->refCountMutex);
diff --git a/libvncserver/sockets.c b/libvncserver/sockets.c
index f21f162..aaef14b 100644
--- a/libvncserver/sockets.c
+++ b/libvncserver/sockets.c
@@ -193,7 +193,7 @@ rfbInitSockets(rfbScreenInfoPtr rfbScreen)
 
         rfbLog("Autoprobing selected TCP6 port %d\n", rfbScreen->ipv6port);
        FD_SET(rfbScreen->listen6Sock, &(rfbScreen->allFds));
-       rfbScreen->maxFd = max((int)rfbScreen->listen6Sock,rfbScreen->maxFd);
+       rfbScreen->maxFd = rfbMax((int)rfbScreen->listen6Sock,rfbScreen->maxFd);
 #endif
     }
     else
@@ -220,7 +220,7 @@ rfbInitSockets(rfbScreenInfoPtr rfbScreen)
       rfbLog("Listening for VNC connections on TCP6 port %d\n", 
rfbScreen->ipv6port);  
        
       FD_SET(rfbScreen->listen6Sock, &(rfbScreen->allFds));
-      rfbScreen->maxFd = max((int)rfbScreen->listen6Sock,rfbScreen->maxFd);
+      rfbScreen->maxFd = rfbMax((int)rfbScreen->listen6Sock,rfbScreen->maxFd);
            }
 #endif
 
@@ -236,7 +236,7 @@ rfbInitSockets(rfbScreenInfoPtr rfbScreen)
        rfbLog("Listening for VNC connections on TCP port %d\n", 
rfbScreen->port);  
 
        FD_SET(rfbScreen->udpSock, &(rfbScreen->allFds));
-       rfbScreen->maxFd = max((int)rfbScreen->udpSock,rfbScreen->maxFd);
+       rfbScreen->maxFd = rfbMax((int)rfbScreen->udpSock,rfbScreen->maxFd);
     }
 }
 
@@ -563,7 +563,7 @@ rfbConnect(rfbScreenInfoPtr rfbScreen,
 
     /* AddEnabledDevice(sock); */
     FD_SET(sock, &rfbScreen->allFds);
-    rfbScreen->maxFd = max(sock,rfbScreen->maxFd);
+    rfbScreen->maxFd = rfbMax(sock,rfbScreen->maxFd);
 
     return sock;
 }
diff --git a/rfb/rfbproto.h b/rfb/rfbproto.h
index 8e607e5..bb6bfa5 100644
--- a/rfb/rfbproto.h
+++ b/rfb/rfbproto.h
@@ -93,8 +93,8 @@
 #define strncasecmp _strnicmp
 #endif
 
+#define rfbMax(a,b) (((a)>(b))?(a):(b))
 #if !defined(WIN32) || defined(__MINGW32__)
-#define max(a,b) (((a)>(b))?(a):(b))
 #ifdef LIBVNCSERVER_HAVE_SYS_TIME_H
 #include <sys/time.h>
 #endif

Reply via email to