[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#471019: marked as done (libgl1-mesa-glx: segfaults in glGetString(GL_EXTENSIONS) on amd64 when there is no GL context)



Your message dated Mon, 17 Mar 2008 19:33:19 +0100
with message-id <47DEB96F.8020908@ens-lyon.org>
and subject line Re: Bug#471019: libgl1-mesa-glx: segfaults in glGetString(GL_EXTENSIONS) on amd64 when there is no GL context
has caused the Debian Bug report #471019,
regarding libgl1-mesa-glx: segfaults in glGetString(GL_EXTENSIONS) on amd64 when there is no GL context
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
471019: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=471019
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libgl1-mesa-glx
Version: 7.0.3~rc2-1
Severity: normal

On amd64, the attached C program segfaults in glGetString()
in /usr/lib/libGL.so.1, but on i386 it simply prints "(nil) 0.000000". 

This causes #439973 - boson segfaults before startup on amd64.

------------------------------------------------------------------
pabs@chianamo:~/tmp$ gcc -o foo foo.c -lGL
pabs@chianamo:~/tmp$ gcc -o foo foo.c -lGL
pabs@chianamo:~/tmp$ ./foo 
(nil) 0.000000
pabs@chianamo:~/tmp$ dpkg-architecture 
DEB_BUILD_ARCH=i386
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_ARCH_CPU=i386
DEB_BUILD_GNU_CPU=i486
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=i486-linux-gnu
DEB_HOST_ARCH=i386
DEB_HOST_ARCH_OS=linux
DEB_HOST_ARCH_CPU=i386
DEB_HOST_GNU_CPU=i486
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=i486-linux-gnu
------------------------------------------------------------------
(sid_amd64)pabs@pergolesi:~$ dpkg -s libgl1-mesa-glx | grep Version
Version: 7.0.3~rc2-1
(sid_amd64)pabs@pergolesi:~$ gcc -o foo foo.c -lGL -g
(sid_amd64)pabs@pergolesi:~$ ./foo 
Segmentation fault
(sid_amd64)pabs@pergolesi:~$ gdb foo
GNU gdb 6.7.1-debian
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show
copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) r
Starting program: /home/pabs/foo 
[Thread debugging using libthread_db enabled]
[New Thread 0x2ac40d813570 (LWP 447)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2ac40d813570 (LWP 447)]
0x00002ac40c1b79f7 in glGetString () from /usr/lib/libGL.so.1
(gdb) bt full
#0  0x00002ac40c1b79f7 in glGetString () from /usr/lib/libGL.so.1
No symbol table info available.
#1  0x0000000000400611 in main (argc=1, argv=0x7fff9eb63408) at foo.c:8
	extensions = (const GLubyte *) 0x0
------------------------------------------------------------------

-- 
bye,
pabs

http://wiki.debian.org/PaulWise
#include <GL/gl.h>
#include <stdio.h>

int
main (int argc, char **argv)
{
	const GLubyte* extensions = glGetString(GL_EXTENSIONS);
	printf("%p %f\n",extensions);
	return 0;
}

Attachment: signature.asc
Description: This is a digitally signed message part


--- End Message ---
--- Begin Message ---
According to upstream, this program isn't doing something valid. So I am
closing this bug and CCing the one against boson.

Brice

< bgoglin> before I report a mesa bug, could anybody tell whether it is
valid to call glGetString(GL_EXTENSIONS) "without any GL context" ?
< nh_> I'd be extremely surprised if it were
< nh_> after all, if you don't have a GL context, how would anybody know
if you were even going to use direct rendering or not?
< nh_> last I checked, libGL wasn't psychic
<+idr> bgoglin: It is not legal to query the GL extension string without
a context.
<+idr> bgoglin: You can't make *ANY* GL calls without a context.



--- End Message ---

Reply to: