[<<] [<] Page 1 of 1 [>] [>>] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Subject:
GrCopyArea bug
From: Kyle Harris ####@####.#### Date: 8 Mar 2000 15:13:59 -0000 Message-Id: <38C66B5F.E13F4BAE@nexus-tech.net> Greg, There's a minor bug in GrCopyArea where *dp is not initialized when copying from the same drawing area. Below is the patch I applied to fix it. --- srvfunc.c.orig Wed Mar 8 06:15:13 2000 +++ srvfunc.c Wed Mar 8 06:18:24 2000 @@ -1295,11 +1295,13 @@ GR_DRAWABLE *dp; GR_WINDOW *swp; GR_PIXMAP *spp; + GR_DRAW_TYPE type; PSD srcpsd; srcpsd = 0; swp = GsFindWindow(source); + type = GsPrepareDrawing(id, gc, &dp); if (swp) { srcpsd = dp->psd; srcx += swp->x; @@ -1312,7 +1314,7 @@ if (!srcpsd) return; - switch (GsPrepareDrawing(id, gc, &dp)) { + switch (type) { case GR_DRAW_TYPE_WINDOW: case GR_DRAW_TYPE_PIXMAP: GdBlit(dp->psd, dp->x + x, dp->y + y, width, height, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[<<] [<] Page 1 of 1 [>] [>>] |