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

Re: [pygame] Another blitting surface to itself crash



A summary of what has been found out so far:

* it doesn't seem to crash on linux/osx.
* It never crashed for SDL 1.2.7 through 1.2.9 (but crashes with 1.2.9
build Lenard made)
* For SDL 1.2.10 and 1.2.11 it crashes after like 2-6 passes, and it
crashes in the blit from surface to screen
* for SDL 1.2.12 and 1.2.13 it crashes immediately on first blit of a
surface to itself, everytime
* crashes with windib, and directx drivers.
* works with a replacement 1.2.13 SDL.dll built with MSVC by brian.
* crashes with assembly disabled.
* -O compilation also fails.
* 1.2.9 SDL fails for Lenard, built with mingw.





On Fri, Aug 8, 2008 at 10:15 AM, Brian Fisher <brian@xxxxxxxxxxxxxxxxxxx> wrote:
> Since it's not code changes that made 1.2.10 prebuilt crash, I guess that
> may mean what changed with 1.2.10 was how the libsdl people make their
> prebuilts?
>
> What about commenting out functionality of the blit to self to try and
> narrow down the cause?
>
>
> On Thu, Aug 7, 2008 at 2:21 PM, Lenard Lindstrom <len-l@xxxxxxxxx> wrote:
>>
>> Same problem with 1.2.9
>>
>> Lenard
>>
>>
>> Brian Fisher wrote:
>>>
>>> As this is a case where the symptom is not connected to the cause (so
>>> looking at the crash in a debugger may not help much) but it seems the
>>> problem can be reproduced consistently no problem, Maybe this is a good
>>> circumstance for binary search debugging?
>>>
>>> getting and building SDL from different SVN revisions may be a great way
>>> to do that. For me, the prebuilt 1.2.9 doesn't crash but the prebuilt 1.2.10
>>> does (although not on the very first blit to self). If MingW built SDL's
>>> behave that same way, then one could do a binary search of SDL's built from
>>> the revision numbers between the 2 releases to target things down to a
>>> specific code change that made it happen. likewise the repro behavior of the
>>> bug changed from 1.2.11 to 1.2.12, so a binary search between those
>>> revisions may be good to do as well.
>>>
>>> Another approach other than using SVN revisions is commenting out
>>> functionality (so making it so only half of the code needed to do blit to
>>> self executes, and seeing if the crash still happpens). Of course that makes
>>> blit-to-surface not have the right behavior, and you need to be a careful
>>> about how you comment out, but it can often narrow down the problem code to
>>> a fairly small set.
>>>
>>> I'm afraid I can't help with such things at the moment, cause I'm not
>>> setup to build with MingW on windows.
>>>
>>>
>>>
>>> On Tue, Aug 5, 2008 at 7:09 PM, Lenard Lindstrom <len-l@xxxxxxxxx
>>> <mailto:len-l@xxxxxxxxx>> wrote:
>>>
>>>    The rebuilt SDL.dll still fails. The problem is MinGW related. And
>>>    SDL does have code for blitting a surface to itself.
>>>
>>>    Lenard
>>>
>>>
>>>
>>>    Lenard Lindstrom wrote:
>>>
>>>
>>>        I wonder if it is the hermes blit library or some piece of
>>>        inlined MMX code. These would not be included in a VC build. I
>>>        will build SDL with assembly code turned off and see what happens.
>>>
>>>
>>>
>>
>
>