[gcompris-devel] segfault with 4.2

Bruno Coudoin bruno.coudoin at free.fr
Sat Dec 20 03:44:02 UTC 2003


Since it occurs at gcompris startup, maybe a step by step gdb would
help.
Run gcompris in gdb then enter:
b main

then step, step, step until the crash occur.
'list' to look at the current code.

Hope it helps.

Bruno.

Le sam 20/12/2003 à 11:03, Richard Boyce a écrit :
> Hello,
> 
> Bruno Coudoin wrote:
> 
> >OK, here we are. In src/gcompris/properties.c there is a test:
> >if (!strcmp(locale, "C"))
> >
> >It maybe that locale is set to NULL an causes a crash. Replace it be the
> >line:
> >if (!strcmp("C", "C"))
> >
> >Recompile install and run gcompris.
> >
> >  
> >
> Did this and still no success. I made all attempts to make sure that 
> there  is not something wrong in my altered config.status, but all 
> checked out o.k. As much as I can see, GDB shows the crash occuring in 
> gdataset.c  (glib-2.2.3at the location):
> 
> gpointer
> g_datalist_id_get_data (GData     **datalist,
>             GQuark     key_id)
> {
>   g_return_val_if_fail (datalist != NULL, NULL);
>  
>   if (key_id)
>     {
>       register GData *list;
>      
> --->      for (list = *datalist; list; list = list->next)
>     if (list->id == key_id)
>       return list->data;
>     }
>  
>   return NULL;
> }
> 
> As I trace the program, this function is visited many, many times, looks 
> like "list = list->next" may be assigning an unaccessable address. I am 
> downloading Version 4.0 and will test tomorrow. Please suggest further 
> what to do.
> 
> yours
> Richard
> 
> >You maybe get the english only but at least we will progress.
> >
> >Bruno.
> >
> >Le ven 19/12/2003 à 20:35, Rob van Dam a écrit :
> >  
> >
> >>Bruno Coudoin wrote:
> >>
> >>    
> >>
> >>>Is there any trace when run in the console.
> >>>Could you run it in gdb and send us the bt (backt trace). The gcompris
> >>>version in src/gcompris/gcompris is compiled with debug in.
> >>>
> >>>Bruno.
> >>>
> >>>Le ven 19/12/2003 à 13:26, Rob van Dam a écrit :
> >>> 
> >>>
> >>>      
> >>>
> >>>>Hello,
> >>>>
> >>>>I have compiled v 4.2 with no errors. On startup Gcompris exits with a 
> >>>>segfault. (for user and root). A previous version 3.2 worked fine.
> >>>>
> >>>>Any idea what can be wrong?
> >>>>
> >>>>I have Gnome 2.2 libraries installed.
> >>>>
> >>>>I ran strace, but the output didn't help me (I can send this if you wish).
> >>>>
> >>>>Rob
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>-------------------------------------------------------
> >>>>This SF.net email is sponsored by: IBM Linux Tutorials.
> >>>>Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
> >>>>Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
> >>>>Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
> >>>>_______________________________________________
> >>>>gcompris-devel mailing list
> >>>>gcompris-devel at lists.sourceforge.net
> >>>>https://lists.sourceforge.net/lists/listinfo/gcompris-devel
> >>>>
> >>>>   
> >>>>
> >>>>        
> >>>>
> >>>
> >>>-------------------------------------------------------
> >>>This SF.net email is sponsored by: IBM Linux Tutorials.
> >>>Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
> >>>Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
> >>>Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
> >>>_______________________________________________
> >>>gcompris-devel mailing list
> >>>gcompris-devel at lists.sourceforge.net
> >>>https://lists.sourceforge.net/lists/listinfo/gcompris-devel
> >>>
> >>> 
> >>>
> >>>      
> >>>
> >>When I run Gcompris from console the only message I see is a harmless 
> >>warning:
> >>(gcompris:20389): WARNING **: Owner of /tmp/orbit-root is not the 
> >>current user.
> >>
> >>I attached a gdb and a strace output. If a need to run gdb with other 
> >>options please let me know.
> >>
> >>
> >>Rob
> >>
> >>______________________________________________________________________
> >>
> >>(gdb) run
> >>Starting program: /opt/kde-3.1/bin/gcompris gcompris
> >>[New Thread 16384 (LWP 20389)]
> >>
> >>** (gcompris:20389): WARNING **: Owner of /tmp/orbit-root is not the current user
> >>
> >>Detaching after fork from child process 20392.
> >>
> >>Program received signal SIGSEGV, Segmentation fault.
> >>[Switching to Thread 16384 (LWP 20389)]
> >>0x080503da in gcompris_properties_new () at properties.c:64
> >>64        if (!strcmp(locale, "C"))
> >>(gdb) bt
> >>#0  0x080503da in gcompris_properties_new () at properties.c:64
> >>#1  0x0804e2ab in load_properties () at gcompris.c:471
> >>#2  0x0804e5f5 in gcompris_init (argc=76, argv=0x4c) at gcompris.c:583
> >>#3  0x0804d4cb in main (argc=0, argv=0x0) at main.c:32
> >>(gdb)
> >>    
> >>
> >
> >
> >
> >
> >-------------------------------------------------------
> >This SF.net email is sponsored by: IBM Linux Tutorials.
> >Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
> >Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
> >Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
> >_______________________________________________
> >gcompris-devel mailing list
> >gcompris-devel at lists.sourceforge.net
> >https://lists.sourceforge.net/lists/listinfo/gcompris-devel
> >  
> >





More information about the Gcompris-devel mailing list