diff options
-rw-r--r-- | .gitignore | 5 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | examples/example.c | 1 | ||||
-rw-r--r-- | libvncclient/vncviewer.c | 6 | ||||
-rw-r--r-- | libvncserver/rfbregion.c | 2 | ||||
-rw-r--r-- | test/encodingstest.c | 1 | ||||
-rw-r--r-- | webclients/novnc/README.md | 4 | ||||
-rw-r--r-- | webclients/novnc/vnc.html | 2 |
8 files changed, 18 insertions, 5 deletions
@@ -67,13 +67,18 @@ test/cargstest test/copyrecttest test/cursortest test/encodingstest +/test/tjbench +/test/tjunittest vncterm/LinuxVNC vncterm/VNCommand vncterm/example +/vncterm/linuxvnc +/vncterm/vncommand x11vnc.spec x11vnc/x11vnc CMakeCache.txt cmake_install.cmake /CMakeFiles +/rfbproto.pdf /rfbproto.rst /vencrypt.txt diff --git a/configure.ac b/configure.ac index c8b0d61..e12af42 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ # Process this file with autoconf to produce a configure script. -AC_INIT(LibVNCServer, 0.9.10, http://sourceforge.net/projects/libvncserver) +AC_INIT(LibVNCServer, 0.9.10, https://github.com/LibVNC/libvncserver) AM_INIT_AUTOMAKE(LibVNCServer, 0.9.10) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AM_CONFIG_HEADER(rfbconfig.h) diff --git a/examples/example.c b/examples/example.c index fc156c0..617e7ad 100644 --- a/examples/example.c +++ b/examples/example.c @@ -66,6 +66,7 @@ typedef struct ClientData { static void clientgone(rfbClientPtr cl) { free(cl->clientData); + cl->clientData = NULL; } static enum rfbNewClientAction newclient(rfbClientPtr cl) diff --git a/libvncclient/vncviewer.c b/libvncclient/vncviewer.c index 8b09d87..3b16a6f 100644 --- a/libvncclient/vncviewer.c +++ b/libvncclient/vncviewer.c @@ -372,6 +372,12 @@ void rfbClientCleanup(rfbClient* client) { FreeTLS(client); + while (client->clientData) { + rfbClientData* next = client->clientData->next; + free(client->clientData); + client->clientData = next; + } + if (client->sock >= 0) close(client->sock); if (client->listenSock >= 0) diff --git a/libvncserver/rfbregion.c b/libvncserver/rfbregion.c index 0ab8a12..1947d7c 100644 --- a/libvncserver/rfbregion.c +++ b/libvncserver/rfbregion.c @@ -751,7 +751,7 @@ rfbBool sraRgnIteratorNext(sraRectangleIterator* i,sraRect* r) i->ptrSize += DEFSTEP; i->sPtrs = (sraSpan**)realloc(i->sPtrs, sizeof(sraSpan*)*i->ptrSize); } - i->ptrPos =+ 2; + i->ptrPos += 2; if(sraReverse(i)) { i->sPtrs[i->ptrPos] = i->sPtrs[i->ptrPos-2]->subspan->back._prev; i->sPtrs[i->ptrPos+1] = &(i->sPtrs[i->ptrPos-2]->subspan->front); diff --git a/test/encodingstest.c b/test/encodingstest.c index c6c8255..715e887 100644 --- a/test/encodingstest.c +++ b/test/encodingstest.c @@ -172,6 +172,7 @@ static void* clientLoop(void* data) { } free(((clientData*)client->clientData)->display); free(client->clientData); + client->clientData = NULL; if(client->frameBuffer) free(client->frameBuffer); rfbClientCleanup(client); diff --git a/webclients/novnc/README.md b/webclients/novnc/README.md index 8bfeb31..9c14e7d 100644 --- a/webclients/novnc/README.md +++ b/webclients/novnc/README.md @@ -10,7 +10,7 @@ Notable commits, announcements and news are posted to @<a href="http://www.twitter.com/noVNC">noVNC</a> There are many companies/projects that have integrated noVNC into -their products including: [Ganeti Web Manager](http://code.osuosl.org/projects/ganeti-webmgr), [Archipel](http://archipelproject.org), [openQRM](http://www.openqrm.com/), [OpenNode](http://www.opennodecloud.com/), [OpenStack](http://www.openstack.org), [Broadway (HTML5 GDK/GTK+ backend)](http://blogs.gnome.org/alexl/2011/03/15/gtk-html-backend-update/), [OpenNebula](http://opennebula.org/), [CloudSigma](http://www.cloudsigma.com/), [Zentyal (formerly eBox)](http://www.zentyal.org/), [SlapOS](http://www.slapos.org), [Intel MeshCentral](https://meshcentral.com), [Amahi](http://amahi.org), [Brightbox](http://brightbox.com/), [Foreman](http://theforeman.org), [LibVNCServer](http://libvncserver.sourceforge.net) and [PocketVNC](http://www.pocketvnc.com/blog/?page_id=866). See [this wiki page](https://github.com/kanaka/noVNC/wiki/ProjectsCompanies-using-noVNC) for more info and links. +their products including: [Ganeti Web Manager](http://code.osuosl.org/projects/ganeti-webmgr), [Archipel](http://archipelproject.org), [openQRM](http://www.openqrm.com/), [OpenNode](http://www.opennodecloud.com/), [OpenStack](http://www.openstack.org), [Broadway (HTML5 GDK/GTK+ backend)](http://blogs.gnome.org/alexl/2011/03/15/gtk-html-backend-update/), [OpenNebula](http://opennebula.org/), [CloudSigma](http://www.cloudsigma.com/), [Zentyal (formerly eBox)](http://www.zentyal.org/), [SlapOS](http://www.slapos.org), [Intel MeshCentral](https://meshcentral.com), [Amahi](http://amahi.org), [Brightbox](http://brightbox.com/), [Foreman](http://theforeman.org), [LibVNCServer](http://libvnc.github.io/) and [PocketVNC](http://www.pocketvnc.com/blog/?page_id=866). See [this wiki page](https://github.com/kanaka/noVNC/wiki/ProjectsCompanies-using-noVNC) for more info and links. ### Features @@ -56,7 +56,7 @@ See more screenshots <a href="http://kanaka.github.com/noVNC/screenshots.html">h ### Server Requirements Unless you are using a VNC server with support for WebSockets -connections (such as [x11vnc/libvncserver](http://libvncserver.sourceforge.net/) or +connections (such as [x11vnc/libvncserver](http://libvnc.github.io/) or [PocketVNC](http://www.pocketvnc.com/blog/?page_id=866)), you need to use a WebSockets to TCP socket proxy. There is a python proxy included ('websockify'). diff --git a/webclients/novnc/vnc.html b/webclients/novnc/vnc.html index 1b886a4..eb73c92 100644 --- a/webclients/novnc/vnc.html +++ b/webclients/novnc/vnc.html @@ -105,7 +105,7 @@ <div id="noVNC_description" style="display:none;" class=""> noVNC is a browser based VNC client implemented using HTML5 Canvas and WebSockets. You will either need a VNC server with WebSockets - support (such as <a href="http://libvncserver.sourceforge.net/">libvncserver</a>) + support (such as <a href="http://libvnc.gtihub.io">libvncserver</a>) or you will need to use <a href="https://github.com/kanaka/websockify">websockify</a> to bridge between your browser and VNC server. See the noVNC |