My game engine is crashing (silently exiting) on one user's computer (Win XP with a Radeon X1600 with the latest drivers), but it's working fine everywhere else (both on Mac, Windows and Linux). I've been unable to reproduce it, so debugging consists of sending that user executables that print information to a log file.
Through fprintf-debugging, I've been able to find that the crash happens on this line:
glGetTexImage(GL_TEXTURE_2D, 0, GL_RGBA, GL_UNSIGNED_BYTE, newFreezer -> backdropTexture);
But I don't know why this is happening or what to do about it. I have checked that the texture is the size I expect (with glGetTexLevelParameteriv), I've set GL_PACK_ALIGNMENT to 1, I've checked the pointer after allocating the memory (newFreezer->backdropTexture = new GLubyte [w*h*4]). I have also checked glGetError before the call that crashes, and it's clean.
Does anyone have any ideas?
(In case you're interested, the game where the crash was found in is Life Flashes By. The crash happens when clicking "New Game" from the main menu.)