diff options
author | dscho <dscho> | 2001-10-16 19:29:49 +0000 |
---|---|---|
committer | dscho <dscho> | 2001-10-16 19:29:49 +0000 |
commit | 47f18e575da762733c19e9f499472ba42f478df8 (patch) | |
tree | 98bda1735006f1868227b80f975fce42bc99249f | |
parent | f41dc003f61d7685d32228ebe2f4b1d71b8ab1cb (diff) | |
download | libtdevnc-47f18e575da762733c19e9f499472ba42f478df8.tar.gz libtdevnc-47f18e575da762733c19e9f499472ba42f478df8.zip |
font errors, requestedRegion bug
-rw-r--r-- | TODO | 3 | ||||
-rw-r--r-- | font.c | 4 | ||||
-rw-r--r-- | rfbserver.c | 10 |
3 files changed, 11 insertions, 6 deletions
@@ -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 @@ -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; |