summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TODO3
-rw-r--r--font.c4
-rw-r--r--rfbserver.c10
3 files changed, 11 insertions, 6 deletions
diff --git a/TODO b/TODO
index 3b4f99d..16bac26 100644
--- a/TODO
+++ b/TODO
@@ -1,6 +1,9 @@
immediate:
----------
+DeferUpdateTime (timing problems!)
+cursor drawing: set optional grain to mark bigger rectangles as drawn (else
+ you end up with thousands of one-pixel-rectangles to encode).
selectbox: scroll bars
documentation
hint that to mark very tiny regions as
diff --git a/font.c b/font.c
index 680ec33..cb31f7f 100644
--- a/font.c
+++ b/font.c
@@ -28,7 +28,7 @@ int rfbDrawChar(rfbScreenInfoPtr rfbScreen,rfbFontDataPtr font,
memcpy(rfbScreen->frameBuffer+(y+j)*rowstride+(x+i)*bpp,colour,bpp);
d<<=1;
}
- if((i&7)!=0) data++;
+ /* if((i&7)!=0) data++; */
}
return(width);
}
@@ -90,7 +90,7 @@ int rfbDrawCharWithClip(rfbScreenInfoPtr rfbScreen,rfbFontDataPtr font,
}
d<<=1;
}
- //if((i&7)==0) data++;
+ /* if((i&7)==0) data++; */
data += extra_bytes;
}
return(width);
diff --git a/rfbserver.c b/rfbserver.c
index e8c913d..3c3c858 100644
--- a/rfbserver.c
+++ b/rfbserver.c
@@ -871,7 +871,7 @@ rfbSendFramebufferUpdate(cl, givenUpdateRegion)
sraRect rect;
int nUpdateRegionRects;
rfbFramebufferUpdateMsg *fu = (rfbFramebufferUpdateMsg *)cl->updateBuf;
- sraRegionPtr updateRegion,updateCopyRegion;
+ sraRegionPtr updateRegion,updateCopyRegion,tmpRegion;
int dx, dy;
Bool sendCursorShape = FALSE;
@@ -932,8 +932,10 @@ rfbSendFramebufferUpdate(cl, givenUpdateRegion)
updateCopyRegion = sraRgnCreateRgn(cl->copyRegion);
sraRgnAnd(updateCopyRegion,cl->requestedRegion);
- sraRgnOffset(cl->requestedRegion,cl->copyDX,cl->copyDY);
- sraRgnAnd(updateCopyRegion,cl->requestedRegion);
+ tmpRegion = sraRgnCreateRgn(cl->requestedRegion);
+ sraRgnOffset(tmpRegion,cl->copyDX,cl->copyDY);
+ sraRgnAnd(updateCopyRegion,tmpRegion);
+ sraRgnDestroy(tmpRegion);
dx = cl->copyDX;
dy = cl->copyDY;
@@ -957,7 +959,7 @@ rfbSendFramebufferUpdate(cl, givenUpdateRegion)
sraRgnSubtract(cl->modifiedRegion,updateRegion);
sraRgnSubtract(cl->modifiedRegion,updateCopyRegion);
- sraRgnMakeEmpty(cl->requestedRegion);
+ /* sraRgnMakeEmpty(cl->requestedRegion); */
sraRgnMakeEmpty(cl->copyRegion);
cl->copyDX = 0;
cl->copyDY = 0;