[Bug 2616] Gambas just segfaults

JuanConde juan.conde at juntadeandalucia.es
Sat Nov 19 10:53:36 UTC 2005


Public bug report changed:
https://launchpad.net/malone/bugs/2616

Comment:
Following the indications of Daniel Holbach I have learned some things:
The command gambas is a kind of script that runs gbx -x, the gambas intepreter in archive mode (all the project contained in a file).

The interpreter, gbx, works OK with some example files (included in
gambas pkg) that I have tested.

Is the gambas project (the IDE, a gambas program itself) what is broken.

Gambas has its own debugging mode - I must learn its basic ussage - so,
probably there's no much use in gdb backtrace.

Running gbx gambas from the app directory in the source tree of gambas, it crashes with a message:
ERROR: #2: Cannot load class 'Project': Unable to load class file
QSettings::sync: filename is null/empty

I don't know if it's meaningfull enough, but it's something more than a
SegFault, isn't it?

Anyway, the output of gdb, following the instructions above instruction
follows:

juan at ibook:/$ gdb gbx
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "powerpc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".

(gdb)  handle SIG33 pass nostop noprint
Signal        Stop      Print   Pass to program Description
SIG33         No        No      Yes             Real-time event 33
(gdb) run -x /usr/bin/gambas
Starting program: /usr/bin/gbx -x /usr/bin/gambas
Qt: gdb: -nograb added to command-line options.
         Use the -dograb option to enforce grabbing.

Program received signal SIGSEGV, Segmentation fault.
0x0f4ba754 in ?? ()
(gdb) bt
#0  0x0f4ba754 in ?? ()
#1  0x100045d0 in key_equal_binary (key_comp=0x101d63b8 "",
    key=0x1 <Address 0x1 out of bounds>, len=0) at gbx_hash.c:68
#2  0x10004c0c in hash_table_lookup_node (hash_table=0x101fe338,
    key=0x1 <Address 0x1 out of bounds>, len=0) at gbx_hash.c:194
#3  0x10004cf8 in HASH_TABLE_insert (hash_table=0x101fe338,
    key=0x1 <Address 0x1 out of bounds>, len=0) at gbx_hash.c:216
#4  0x100381d8 in collection_add_key (col=0x101fbb40,
    key=0x1 <Address 0x1 out of bounds>, len=0) at gbx_c_collection.c:70
#5  0x100387f8 in collection_put (_object=0x101fbb40, _param=0x100634b0)
    at gbx_c_collection.c:238
#6  0x1000a1a8 in EXEC_call_native (exec=0x10038754 <collection_put>,
    object=0x101fbb40, type=0, param=0x100634b0) at gbx_exec.c:650
#7  0x1000a78c in EXEC_native () at gbx_exec.c:757
#8  0x1000b0cc in EXEC_spec (special=3, class=0x1005e508, object=0x101fbb40,
    nparam=2, drop=0 '\0') at gbx_exec.c:975
#9  0x1000d8d0 in EXEC_pop_array () at gbx_exec_pop.c:275
#10 0x1000df1c in EXEC_loop () at gbx_exec_loop.c:713
#11 0x10009e88 in EXEC_function_real (keep_ret_value=0 '\0') at gbx_exec.c:550
#12 0x1000af18 in EXEC_public (class=0x101eec10, object=0x0,
    name=0x10041c60 "_init", nparam=0) at gbx_exec.c:932
#13 0x10017728 in CLASS_load_real (class=0x101eec10) at gbx_class_load.c:681
#14 0x1000b534 in EXEC_new () at gbx_exec.c:1118
---Type <return> to continue, or q <return> to quit---
#15 0x1000e4dc in EXEC_loop () at gbx_exec_loop.c:899
#16 0x10009e88 in EXEC_function_real (keep_ret_value=0 '\0') at gbx_exec.c:550
#17 0x1001769c in CLASS_load_without_init (class=0x101678d0)
    at gbx_class_load.c:664
#18 0x100176fc in CLASS_load_real (class=0x101678d0) at gbx_class_load.c:678
#19 0x1000abf8 in EXEC_object (val=0x10063480, class=0x7fcb24c8,
    object=0x7fcb24cc, defined=0x7fcb24d0 "\001\037\uffff\200\020\005
    at gbx_exec.c:853
#20 0x1000bb88 in EXEC_push_unknown () at gbx_exec_push.c:61
#21 0x1000dc64 in EXEC_loop () at gbx_exec_loop.c:621
#22 0x10009e88 in EXEC_function_real (keep_ret_value=0 '\0') at gbx_exec.c:550
#23 0x1000af18 in EXEC_public (class=0x1007b8b8, object=0x0,
    name=0x10041c60 "_init", nparam=0) at gbx_exec.c:932
#24 0x10017728 in CLASS_load_real (class=0x1007b8b8) at gbx_class_load.c:681
#25 0x1000abf8 in EXEC_object (val=0x10063460, class=0x7fcb28b8,
    object=0x7fcb28bc, defined=0x7fcb28c0 "\001\036pL\020\006\uffff\uffff")
    at gbx_exec.c:853
#26 0x1000bb88 in EXEC_push_unknown () at gbx_exec_push.c:61
#27 0x1000dc64 in EXEC_loop () at gbx_exec_loop.c:621
#28 0x10009e88 in EXEC_function_real (keep_ret_value=0 '\0') at gbx_exec.c:550
#29 0x1000b110 in EXEC_spec (special=0, class=0x10169df8, object=0x101e6fe0,
    nparam=0, drop=1 '\001') at gbx_exec.c:982
#30 0x1000b378 in EXEC_special_inheritance (special=0, class=0x10169df8,
---Type <return> to continue, or q <return> to quit---
    object=0x101e6fe0, nparam=0, drop=1 '\001') at gbx_exec.c:1079
#31 0x1003335c in OBJECT_create (object=0x10169e70, class=0x10169df8,
    name=0x0, parent=0x0, nparam=0) at gbx_object.c:288
#32 0x10014ed8 in CLASS_auto_create (class=0x10169df8, nparam=0)
    at gbx_class.c:786
#33 0x1000bb04 in EXEC_auto_create (class=0x10169df8) at gbx_exec.c:1235
#34 0x1000c0fc in EXEC_push_unknown () at gbx_exec_push.c:175
#35 0x1000dc64 in EXEC_loop () at gbx_exec_loop.c:621
#36 0x10009e88 in EXEC_function_real (keep_ret_value=0 '\0') at gbx_exec.c:550
#37 0x1000b110 in EXEC_spec (special=0, class=0x10167538, object=0x101dec78,
    nparam=0, drop=1 '\001') at gbx_exec.c:982
#38 0x1000b378 in EXEC_special_inheritance (special=0, class=0x10167538,
    object=0x101dec78, nparam=0, drop=1 '\001') at gbx_exec.c:1079
#39 0x1003335c in OBJECT_create (object=0x101675b0, class=0x10167538,
    name=0x0, parent=0x0, nparam=1) at gbx_object.c:288
#40 0x10014ed8 in CLASS_auto_create (class=0x10167538, nparam=1)
    at gbx_class.c:786
#41 0x0ec83c34 in ?? ()
#42 0x0ec83c34 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb)

If I find anything else I'll post it asap.
P.S.: It's a bad weather weekend in Seville, I hope I'll get some time to work on it.




More information about the universe-bugs mailing list