[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[pygame] Segmentation fault through taskbar minimization/restoration



Hi, so I'm undergoing kind of a crazy bug I've found with Pygame or my computer or something. I'm using Windows XP (Pro SP3), and the problem happens when using either Python 3.2 or 2.7 and their matching Pygame versions respectively. Pardon the length here, but the basic problem is simple:

All I have to do is load a basic Pygame test program (like chimp.py or stars.py in the Pygame examples directory, or something I would include here except that it's too long already) and, as long as either events.get() or events.pump() is being called each frame, I can trigger a crash by doing this:

First, minimize the Pygame-created window by clicking the minus sign in the upper right corner of the window frame (not essential, but relevant), then do the following sequence: Click the window's icon in the taskbar to restore it; minimize it again, but, this time, do so by clicking it in the taskbar; restore it again, minimize using the taskbar; etc. After a few iterations of this (usually 2 or 3), the program crashes with the following error message:

"Fatal Python error: (pygame parachute) Segmentation Fault"

And I get a "This application has requested the Runtime to terminate it in an unusual way." message from Windows too, plus python.exe itself usually crashes.

This never happens when minimizing strictly using the minus sign in the upper right corner, only when minimizing using the taskbar. It also happens when changing back and forth between a full-screen application and the Pygame window, though, again, only when using the mouse and taskbar; Alt+Tab never crashes. Changing focus between non-full-screen windows and Pygame doesn't trigger it either; it seems to be specifically tied to the minimization and restoration aspects.

It's also happened when doing this kind of thing to the command prompt window that accompanies the Pygame window, but that produces errors far more weirdly and unreliably, whereas I can usually get this to fail quickly and easily. Except on a couple occasions, when the sequence hasn't worked by itself, and I've had to click back and forth between the windows and desktop a bit as well. But usually, it happens unfailingly.

I really don't understand it. Does anyone have any ideas?