[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [pygame] Re: BUG: problem with surface clipping region
I'm still running 1.6 (it's on my machine at work), but when I try to pass in None to set_clip I get segmentation faults. If I just call s.set_clip() I get the expected results:
1.6
<rect(10, 10, 10, 10)>
<rect(10, 10, 10, 10)>
<rect(0, 0, 800, 600)>
So if there's a bug it'd probably be fairly easy to track down. Have you tried just calling the function without any parameters?
On 3/15/07, Diego Essaya <dessaya@xxxxxxxxx> wrote:
So, any hints about this? Can anyone confirm that this is a bug? If that is the case, I might find some spare time to try to make a patch (no promises here, I have never read the pygame source code :-).
I'm getting the same odd behavior on both Linux and Windows versions of pygame, using Python
2.4. Didn't try with 2.5.
Thanks!
Diego
On 3/12/07, Diego Essaya
<dessaya@xxxxxxxxx> wrote:
I'm having this problem with the Surface.set_clip() method that appears to be a bug:
import pygame
print pygame.__version__
s = pygame.display.set_mode((800, 600))
r = pygame.Rect(10, 10, 10, 10)
s.set_clip(r)
print s.get_clip()
r.move_ip(10, 0)
print s.get_clip()
s.set_clip(None)
print s.get_clip()
This yields the following output:
1.7.1release
<rect(10, 10, 10, 10)>
<rect(10, 10, 10, 10)>
<rect(25708, 0, 0, 600)>
After this, the clip region of the display surface is garbled and operations on the surface fail. Running the script again yields a different garbled value.
I tried modifying the line with set_clip() with:
s.set_clip(pygame.Rect(r))
but this did not solve the problem.
Is this really a bug, or am I doing something wrong? Also, my apologies if this has been discussed before.
Thanks,
Diego