[ros-kernel] bug found - need help

Royce Mitchell III royce3 at ev1.net
Sun Mar 21 20:50:56 CET 2004


Okay, I'm trying to run this code:

http://www.gamedev.net/reference/programming/features/gpgenesis3/starfield.zip

Which is found here:

http://www.gamedev.net/reference/articles/article1251.asp

And, of course, it bugchecks win32k.

What I traced the problem to was this:

DIB_4BPP_GetPixel() is getting called with a NULL in SurfObj->pvScan0, 
which is being called indirectly from NtGdiGetPixel()!

Now, I can't figure out how DIB_4BPP_GetPixel() is getting assigned to 
the DC's DIB_GetPixel function pointer.

It seems to me that pvScan0 *must* be non-NULL before DIB_4BPP_GetPixel 
could be assigned to a pointer for that DC.

Now, the app is not selecting any HBITMAP objects into it's DC. So, I 
have 3 questions:

1) Where/how is DIB_4BPP_GetPixel getting assigned to a pointer?

2) Why are we creating a DIB behind a window's DC?

3) Does Windows, in fact, create a DIB/DDB behind a window's DC by default?

Thanks,

Royce3

P.S. I will not submit a bug to bugzilla unless I give up on it. I wanna 
fix this, just need some help...



More information about the Ros-kernel mailing list