From cddeb0d9d261d0a7f6e987c69d6123f5aedeebbe Mon Sep 17 00:00:00 2001 From: dscho Date: Fri, 14 Dec 2001 15:36:23 +0000 Subject: [PATCH] *argc=0 in cargs allowed, when copying area, first undraw cursor ... --- cargs.c | 3 +++ main.c | 2 ++ 2 files changed, 5 insertions(+) diff --git a/cargs.c b/cargs.c index e94ed52..dfb8f1c 100644 --- a/cargs.c +++ b/cargs.c @@ -40,6 +40,8 @@ rfbProcessArguments(rfbScreenInfoPtr rfbScreen,int* argc, char *argv[]) { int i,i1; + if(!argc) return; + for (i = i1 = 1; i < *argc; i++) { if (strcmp(argv[i], "-help") == 0) { rfbUsage(); @@ -101,6 +103,7 @@ rfbProcessSizeArguments(int* width,int* height,int* bpp,int* argc, char *argv[]) { int i,i1; + if(!argc) return; for (i = i1 = 1; i < *argc-1; i++) { if (strcmp(argv[i], "-bpp") == 0) { *bpp = atoi(argv[++i]); diff --git a/main.c b/main.c index f87181c..5e39ae5 100644 --- a/main.c +++ b/main.c @@ -143,6 +143,8 @@ void rfbDoCopyRegion(rfbScreenInfoPtr rfbScreen,sraRegionPtr copyRegion,int dx,i rowstride=rfbScreen->paddedWidthInBytes; char *in,*out; + rfbUndrawCursor(rfbScreen); + /* copy it, really */ i = sraRgnGetReverseIterator(copyRegion,dx<0,dy<0); while(sraRgnIteratorNext(i,&rect)) {