[Gambas-devel] gb.net.curl crashes with signal #11, segmentation fault

Benoît Minisini gambas at ...1...
Sun Feb 10 22:46:08 CET 2013


Le 10/02/2013 22:15, Sebastian Kulesz a écrit :
> Hi!
>
> I'm using Archlinux, after upgrading curl (7.28.1-1 -> 7.29.0-1) i am
> getting a crash every time a project (of any type) that loads the
> gb.net.curl component ends. Here is the backtrace from gdb:
>
> (gdb) run
> Starting program: /usr/bin/gbx3
> warning: Could not load shared library symbols for linux-vdso.so.1.
> Do you need "set solib-search-path" or "set sysroot"?
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/usr/lib/libthread_db.so.1".
> [New Thread 0x7ffff57ae700 (LWP 3253)]
> [Thread 0x7ffff57ae700 (LWP 3253) exited]
> Invalid signature
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff62964a0 in curl_multi_cleanup () from /usr/lib/libcurl.so.4
> (gdb) bt
> #0  0x00007ffff62964a0 in curl_multi_cleanup () from /usr/lib/libcurl.so.4
> #1  0x000000000040b03b in EXEC_native () at gbx_exec.c:1332
> #2  0x000000000040b5fd in EXEC_public_desc (class=0x0, class at ...703...=0x6b4f78,
> object=0x61, object at ...703...=0x0, desc=0x61, nparam=7099400, nparam at ...703...=0)
>      at gbx_exec.c:1572
> #3  0x000000000040b682 in EXEC_public (class=class at ...703...=0x6b4f78,
> object=object at ...703...=0x0, name=name at ...703...=0x43cda2 "_exit",
> nparam=nparam at ...703...=0)
>      at gbx_exec.c:1595
> #4  0x000000000040f252 in exit_class (class=0x6b4f78, native=<optimized
> out>) at gbx_class.c:109
> #5  exit_class (native=1 '\001', class=0x6b4f78) at gbx_class.c:287
> #6  CLASS_clean_up (silent=silent at ...703...=0 '\000') at gbx_class.c:386
> #7  0x000000000042535a in main_exit (silent=0 '\000', silent at ...703...=-19
> '\355') at gbx.c:128
> #8  0x0000000000404639 in main (argc=1, argv=0x7fffffffe1c8) at gbx.c:429
>
> (gdb) bt full
> #0  0x00007ffff62964a0 in curl_multi_cleanup () from /usr/lib/libcurl.so.4
> No symbol table info available.
> #1  0x000000000040b03b in EXEC_native () at gbx_exec.c:1332
>          desc = 0x7ffff66f9f20 <CCurlDesc+192>
>          nparam = 0
>          object = 0x0
>          use_stack = 0 '\000'
>          i = <optimized out>
>          n = <optimized out>
>          nm = <optimized out>
>          value = <optimized out>
>          sign = <optimized out>
>          error = <optimized out>
>          ret = {type = 3, _boolean = {type = 3, value = 34}, _byte = {type =
> 3, value = 34}, _short = {type = 3, value = 34}, _integer = {type = 3,
>              value = 34}, _long = {type = 3, value = 34}, _single = {type =
> 3, value = 4.76441478e-44}, _float = {type = 3,
>              value = 1.6798231958602383e-322}, _date = {type = 3, date = 34,
> time = 0}, _string = {type = 3, addr = 0x22 <Address 0x22 out of bounds>,
>              start = 4253865, len = 9}, _pointer = {type = 3, value = 0x22
> <Address 0x22 out of bounds>}, _function = {type = 3, class = 0x22,
>              object = 0x90040e8a9, kind = 120 'x', defined = 79 'O', index =
> 107}, _variant = {type = 3, vtype = 34, value = {_boolean = -87 '\251',
>                _byte = 169 '\251', _short = -5975, _integer = 4253865, _long
> = 38658959529, _single = 5.96093449e-39, _float = 1.9100063807245997e-313,
>                _date = {date = 4253865, time = 9}, _string = 0x90040e8a9
> <Address 0x90040e8a9 out of bounds>, _pointer = 0x90040e8a9, _object =
> 0x90040e8a9,
>                data = 38658959529}}, _class = {type = 3, class = 0x22, super
> = 0x90040e8a9}, _object = {class = 0x3, object = 0x22, super =
> 0x90040e8a9},
>            _void = {type = 3, ptype = 34, value = {38658959529, 7032696}}}
> #2  0x000000000040b5fd in EXEC_public_desc (class=0x0, class at ...703...=0x6b4f78,
> object=0x61, object at ...703...=0x0, desc=0x61, nparam=7099400, nparam at ...703...=0)
>      at gbx_exec.c:1572
> No locals.
> #3  0x000000000040b682 in EXEC_public (class=class at ...703...=0x6b4f78,
> object=object at ...703...=0x0, name=name at ...703...=0x43cda2 "_exit",
> nparam=nparam at ...703...=0)
>      at gbx_exec.c:1595
>          desc = <optimized out>
> #4  0x000000000040f252 in exit_class (class=0x6b4f78, native=<optimized
> out>) at gbx_class.c:109
> No locals.
> #5  exit_class (native=1 '\001', class=0x6b4f78) at gbx_class.c:287
> No locals.
> #6  CLASS_clean_up (silent=silent at ...703...=0 '\000') at gbx_class.c:386
>          n = <optimized out>
>          nc = 4
>          nb = <optimized out>
>          class = 0x6b4f78
> #7  0x000000000042535a in main_exit (silent=0 '\000', silent at ...703...=-19
> '\355') at gbx.c:128
>          __err = <optimized out>
>          __err_context = {prev = 0x0, handler = 0x0, info = {code = 0
> '\000', native = 0 '\000', free = -1 '\377', _reserved = -1 '\377', cp =
> 0x0,
>              fp = 0x0, pc = 0x31b46c48413b6c8b, msg = 0xce4b9336b8076c8b
> <Address 0xce4b9336b8076c8b out of bounds>}, env = {{__jmpbuf = {0,
>                  -3581606660242051957, 4212308, 140737488347584, 0, 0,
> 3581606661264731275, -3581607229822243701}, __mask_was_saved = 0,
> __saved_mask = {
>                  __val = {0, 16, 0, 7109608, 1, 1, 4212308, 140737488347584,
> 0, 1, 0, 1, 4212308, 0, 1, 4212308}}}}, ret = 0 '\000'}
> #8  0x0000000000404639 in main (argc=1, argv=0x7fffffffe1c8) at gbx.c:429
>          startup = 0x6c7d88
>          i = 1
>          n = 7099400
>          file = 0x4390ed "."
>          ret = 0
> (gdb)
>
> I read the curl webpage, but saw no info about breaking changes. The
> component works perfectly, it just shows a message at the end of the
> execution that it crashed.
> Let me know if you need me to compile curl with debugging symbols too.
>
> Thanks!
>

Well, it crashes inside the libcurl library apparently. Try to run the 
project with valgrind to see if this is not the consequence of an 
earlier illegal memory access.

Regards,

-- 
Benoît Minisini




More information about the Devel mailing list