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

Re: [pygame] More DirectX related problems



hi,

I'd recommend setting up an environment variable to make windib the
default for you whilst you debug this issue.

My guess is that memory is getting overwritten somewhere causing the crash.

cu,

On Wed, Feb 4, 2009 at 11:20 AM, Lenard Lindstrom <len-l@xxxxxxxxx> wrote:
> Yes, I agree it's likely buggy code. But are the problems in SDL or Pygame?
> Possibly both. I am guessing that any DirectX related SDL bugs are a
> write-off. The developers have no intentions of fixing them. Of course we
> should continue cleaning up Pygame. The init function looks problematic.
> Let's hope that helps.
>
> Lenard
>
>
> René Dudfield wrote:
>>
>> hey,
>>
>> sure, windows sometimes corrupts itself.  Nothing new there.
>> Especially if the code you are working on passes in incorrect values,
>> and is overwriting memory it shouldn't.
>>
>> It is easy to crash many machines with a few well crafted opengl,
>> directx (or other video API) calls.
>>
>>
>> If using non-buggy code, that doesn't do buffer overwrites and such I
>> think you wouldn't have as many problems with directx.
>>
>>
>>
>> cheers,
>>
>>
>>
>> On Wed, Feb 4, 2009 at 10:34 AM, Lenard Lindstrom <len-l@xxxxxxxxx> wrote:
>>
>>>
>>> I just had personal confirmation that SDL, maybe with the help of Pygame,
>>> does have DirectX issues. After repeated runs of surfarray_test.py and
>>> related programs my antiquated system(*) reached the point that a simple
>>> pygame.init() call would segfault. I confirmed it was DirectX by changing
>>> the video driver to windib. That worked. And to further confirm it was a
>>> corrupted DirectX and not Python I tried the dxdiag.exe video tests. They
>>> failed. Only a system reboot cleared the problem. At that point I also
>>> confirmed that non of the other programs I was using depended on DirectX.
>>> Only Python/Pygame caused ddraw.dll and dsound.dll to be loaded and kept
>>> alive by that suspicious ddhelp.exe character. Apparently DirectX has a
>>> memory.
>>>
>>> So what to do. Maybe it is time to defer to the judgment of the SDL
>>> developers and just let windib be the default Windows video driver. The
>>> documentation can suggest that anyone experiencing performance problems
>>> try
>>> directx.
>>>
>>> Lenard
>>>
>>>
>>> (*) Windows 98, DirectX 8.0 (And no, I don't want to see what DX 9 or
>>> higher
>>> will do for me. It would probably break something).
>>>
>>>
>
> --
> Lenard Lindstrom
> <len-l@xxxxxxxxx>
>
>