diff options
author | Christian Beier <dontmind@freeshell.org> | 2009-10-31 20:37:28 +0100 |
---|---|---|
committer | Johannes Schindelin <johannes.schindelin@gmx.de> | 2009-10-31 21:45:15 +0100 |
commit | 76b468ceb0737b8ea98a2ca076277d6fc6357aa0 (patch) | |
tree | d9c91f4e6b9750e7dafa41a44161cc5b1937b6b1 | |
parent | 7ed1c0aeac12fc7078013d0cb57ae40e6ee934d6 (diff) | |
download | libvncserver-76b468ceb0737b8ea98a2ca076277d6fc6357aa0.zip libvncserver-76b468ceb0737b8ea98a2ca076277d6fc6357aa0.tar.gz |
SDLvncviewer: don't call clean up the same client twice.
If rfbInitConnection fails, it cleans up the client, so protect against
doing it ourselves again.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
-rw-r--r-- | client_examples/SDLvncviewer.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/client_examples/SDLvncviewer.c b/client_examples/SDLvncviewer.c index 5555cd1..f4e2cb6 100644 --- a/client_examples/SDLvncviewer.c +++ b/client_examples/SDLvncviewer.c @@ -356,7 +356,8 @@ static void cleanup(rfbClient* cl) */ SDL_QuitSubSystem(SDL_INIT_VIDEO); SDL_InitSubSystem(SDL_INIT_VIDEO); - rfbClientCleanup(cl); + if(cl) + rfbClientCleanup(cl); } @@ -513,6 +514,7 @@ int main(int argc,char** argv) { cl->listenPort = LISTEN_PORT_OFFSET; if(!rfbInitClient(cl,&argc,argv)) { + cl = NULL; /* rfbInitClient has already freed the client struct */ cleanup(cl); break; } |