Hi, folks. 

I've been developing a plug-in for XMMS using OpenGL, using Mesa
3.0. I've been having no problem, except for GLX hardware
acceleration with the Nvidia Riva TNT crashing X hard whenever I
enable NURBS, but that's not your guys' fault. :)

Basically, Mesa 3.0 works fine.

Now, with Mesa 3.1, I get a crash from gl_make_normal_cullmask() in
vbcull.c while drawing my NURBS object. It seems that there's a
for-loop in there that doesn't terminate:

965              for (i = VB->Start ;; ) 
(gdb) 
966                 if (VB->Flag[++i] & (VERT_NORM|VERT_END_VB)) {
(gdb) 
967                    VB->NormCullMask[i] = ~0;
(gdb) 
968                    if (VB->Flag[i] & VERT_END_VB) return;
(gdb) 

Sometimes i here gets incremented past the end of VB->Flag[]
and thus the program segfaults on the line:

Program received signal SIGSEGV, Segmentation fault.
0x406e846b in gl_make_normal_cullmask (VB=Cannot access memory at address 0x11.
) at vbcull.c:966
966                 if (VB->Flag[++i] & (VERT_NORM|VERT_END_VB)) {
(gdb) print i
$6 = 1508
(gdb) print VB->Flag[i] 
Cannot access memory at address 0x81ed000.
(gdb) print VB->Flag[i - 1]
$7 = 0

I'm not sure what would help you guys most; a core-dump? My
source code?

If you're interested, the source code is at:

http://csl.cse.ucsc.edu/~ben/xmms/

I've noticed that with a little fiddling in gdb (putting in
breakpoints here and there) I can get the program to crash at
different points, all within Mesa code, so I think Mesa 3.1 just
wasn't tested very well with NURBS, and has some bugs to work out.

I've tested my code with electric_fence, which reports no accesses of
memory I haven't allocated, so I don't *think* I'm trouncing over
memory I shouldn't.

What can I do to help you guys debug this?

Ben

-- 
Brought to you by the letters J and B and the number 11.
"Sculch is junk."
Debian GNU/Linux maintainer of Gimp and GTK+ -- http://www.debian.org/


_______________________________________________
Mesa-bug maillist  -  [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-bug


_______________________________________________
Mesa-dev maillist  -  [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-dev

Reply via email to