Wines testsuite has tests which resizes and moves windows and that one causes the X server to abort. my original report was in: https://bugzilla.novell.com/show_bug.cgi?id=558441 Program received signal SIGABRT, Aborted. 0x00007efff9d8c4e5 in raise () from /lib64/libc.so.6 (gdb) b Breakpoint 1 at 0x7efff9d8c4e5 (gdb) bt #0 0x00007efff9d8c4e5 in raise () from /lib64/libc.so.6 #1 0x00007efff9d8d9b0 in abort () from /lib64/libc.so.6 #2 0x00007efff9d8524a in __assert_fail () from /lib64/libc.so.6 #3 0x00007efffb326044 in pixman_set_extents (region=<value optimized out>) at pixman-region.c:1093 #4 0x00007efffb3262af in pixman_region_translate (region=0x44e2c90, x=25716, y=6) at pixman-region.c:2287 #5 0x00007efff7d8f89a in uxa_poly_fill_rect (pDrawable=0x4507e60, pGC=0x407f660, nrect=2, prect=0x450d910) at uxa-accel.c:685 #6 0x00007efff7d8e4c8 in uxa_poly_segment (pDrawable=0x4507e60, pGC=0x6474, nseg=6, pSeg=<value optimized out>) at uxa-accel.c:658 #7 0x0000000000538d9b in damagePolySegment (pDrawable=0x4507e60, pGC=0x407f660, nSeg=2, pSeg=0x44e00d4) at damage.c:1191 #8 0x000000000044b744 in ProcPolySegment (client=0x4563040) at dispatch.c:1699 #9 0x000000000044da04 in Dispatch () at dispatch.c:456 #10 0x0000000000433965 in main (argc=<value optimized out>, argv=0x7fff861ce4c8, envp=<value optimized out>) at main.c:397 (gdb) up #1 0x00007efff9d8d9b0 in abort () from /lib64/libc.so.6 (gdb) #2 0x00007efff9d8524a in __assert_fail () from /lib64/libc.so.6 (gdb) #3 0x00007efffb326044 in pixman_set_extents (region=<value optimized out>) at pixman-region.c:1093 1093 assert (region->extents.x1 < region->extents.x2); (gdb) print region $1 = <value optimized out> (gdb) up #4 0x00007efffb3262af in pixman_region_translate (region=0x44e2c90, x=25716, y=6) at pixman-region.c:2287 2287 pixman_set_extents (region); (gdb) prin region Ambiguous command "prin region": print, print-object, printf. (gdb) print region $2 = (region_type_t *) 0x44e2c90 (gdb) print *region $3 = {extents = {x1 = 102, y1 = -32648, x2 = 0, y2 = 0}, data = 0x3b22060} (gdb) (gdb) up #5 0x00007efff7d8f89a in uxa_poly_fill_rect (pDrawable=0x4507e60, pGC=0x407f660, nrect=2, prect=0x450d910) at uxa-accel.c:685 685 REGION_TRANSLATE(pScreen, pReg, pDrawable->x, pDrawable->y); (gdb) print pReg $4 = <value optimized out> (gdb) print prect $5 = (xRectangle *) 0x450d910 (gdb) print prect[0] $6 = {x = -1, y = 32766, width = 32767, height = 1} (gdb) print prect[1] $7 = {x = 32766, y = -1, width = 1, height = 32767} (gdb) so somewhere in between a negative value enters the game, perhaps after offseting both prects or so. i can 100% reproduce this, however just with Wine currently.
reproduce: - build wine cd dlls/user32/tests make check
Which version of pixman are you using?
pixman 0.16.0
This assert will likely be gone with pixman 0.16.4, but most likely it reflects a real underlying bug either in the server or in the Intel driver. See also bug 25270.
(In reply to comment #0) > Wines testsuite has tests which resizes and moves windows and that one > causes the X server to abort. ... > i can 100% reproduce this, however just with Wine currently. Hi Marcus, As Søren mentioned, the assert is being (or has been) fixed. But this would still be an interesting bug to track down. The fact that the current test case is only with wine makes it somewhat difficult to work with. Could you capture the execution of the offending test with xtrace? If you could send the result of that, that should allow us to construct a minimal test case for this bug. Thanks, -Carl
Works in sna...
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.