From: Brian P. <bri...@tu...> - 2004-07-20 20:46:27
|
Ricky Uy wrote: > There have been several posts about a "memory access violation" error > when people try to use the tilesort spu. It is because of this that I > began using the pack->tilesort->render configuration as a workaround. I > found the problem, however, and here is a patch. Put this after line 333 > in tilesort_window.c: > > /* this should be line 333 */ winInfo->lastY = r.top; > > if(winInfo->lastWidth == 0 || winInfo->lastHeight == 0) > { > if (tilesort_spu.fakeWindowWidth != 0) > { > winInfo->lastWidth = tilesort_spu.fakeWindowWidth; > > winInfo->lastHeight = tilesort_spu.fakeWindowHeight; > } > } > > Basically, winInfo->client_wnd is sometimes not NULL, but still > currently an invalid handle for purposes of retrieving the window size > because the window has not yet been initialized. In this case, the > lastWidth and lastHeight variables are going to be 0, and they are never > set to the fake_window_dims parameters because it never fell into the > if(!winInfo->client) branch. This patch fixes that. This is all > application dependent due to the way different applications set up their > windows, so that's why it worked before with some programs but not with > others. > > You should now be able to do a straight tilesort->render configuration > in Windows. Hope this helps some of you out. I'm checking in the fix, Ricky. Thanks. -Brian |