x11vnc memleaks patched

pull/1/head
dscho 23 years ago
parent efa12fa978
commit 11deabd325

@ -68,7 +68,7 @@ OSXvnc-server: mac.o libvncserver.a
x11vnc.o: x11vnc.c 1instance.c x11vnc.o: x11vnc.c 1instance.c
x11vnc: x11vnc.o libvncserver.a x11vnc: x11vnc.o libvncserver.a
$(CC) -o x11vnc x11vnc.o $(LIBS) $(XLIBS) $(CC) -g -o x11vnc x11vnc.o $(LIBS) $(XLIBS)
x11vnc_static: x11vnc.o libvncserver.a x11vnc_static: x11vnc.o libvncserver.a
$(CC) -o x11vnc_static x11vnc.o libvncserver.a /usr/lib/libz.a /usr/lib/libjpeg.a $(XLIBS) $(CC) -o x11vnc_static x11vnc.o libvncserver.a /usr/lib/libz.a /usr/lib/libjpeg.a $(XLIBS)

@ -73,11 +73,13 @@ void init_keycodes()
XFree ((char *) keymap); XFree ((char *) keymap);
} }
static Bool shutDownServer=0;
/* the hooks */ /* the hooks */
void clientGone(rfbClientPtr cl) void clientGone(rfbClientPtr cl)
{ {
exit(0); shutDownServer=-1;
} }
enum rfbNewClientAction newClient(rfbClientPtr cl) enum rfbNewClientAction newClient(rfbClientPtr cl)
@ -502,6 +504,15 @@ int main(int argc,char** argv)
#endif #endif
rfbProcessEvents(screen,-1); rfbProcessEvents(screen,-1);
if(shutDownServer) {
free(backupImage);
rfbScreenCleanup(screen);
XFree(dpy);
#ifndef NO_SHM
XShmDetach(dpy,framebufferImage);
#endif
exit(0);
}
if(dontTile) { if(dontTile) {
if(gotInput) { if(gotInput) {

Loading…
Cancel
Save