Hi,

I wasn't sure where to raise bugs against libapr. I'm experiencing
crashes in the library as called from Perl while running the git-svn
script. Is the library meant to be tolerant to abuse (in which case
this is a perl bug) or has something gotten screwed up?

17:43 a...@danny/x86_64 [mirage.git-svn] >git svn fetch --fetch-all
Segmentation fault (core dumped)
17:43 a...@danny/x86_64 [mirage.git-svn] >gdb /usr/bin/perl core
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
<snip>
Core was generated by `/usr/bin/perl /usr/libexec/git-core/git-svn
fetch --fetch-all'.
Program terminated with signal 11, Segmentation fault.
[New process 22191]
#0  0x00007f4cd5af7360 in ?? ()
(gdb) bt
#0  0x00007f4cd5af7360 in ?? ()
#1  0x00007f4cd7410107 in apr_pool_destroy (pool=0x253b528) at
memory/unix/apr_pools.c:2306
#2  0x00007f4cd74100dd in apr_pool_destroy (pool=0x22b9cc8) at
memory/unix/apr_pools.c:771
#3  0x00007f4cd74102f4 in apr_pool_terminate () at memory/unix/apr_pools.c:602
#4  0x00007f4cd8b87f13 in _wrap_apr_terminate () from
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux/auto/SVN/_Core/_Core.so
#5  0x00000000004765f9 in Perl_pp_entersub ()
#6  0x0000000000474d9a in Perl_runops_standard ()
#7  0x0000000000425407 in Perl_call_sv ()
#8  0x000000000042575a in Perl_call_list ()
#9  0x0000000000429175 in perl_destruct ()
#10 0x0000000000422138 in main ()
(gdb) frame 1
#1  0x00007f4cd7410107 in apr_pool_destroy (pool=0x253b528) at
memory/unix/apr_pools.c:2306
2306    memory/unix/apr_pools.c: No such file or directory.
        in memory/unix/apr_pools.c
(gdb) directory
~/src/gentoo/tmp/portage/dev-libs/apr-1.3.3/work/apr-1.3.3/memory/unix/
Source directories searched:
/home/alex/src/gentoo/tmp/portage/dev-libs/apr-1.3.3/work/apr-1.3.3/memory/unix:$cdir:$cwd
(gdb) l
2301    {
2302        cleanup_t *c = *cref;
2303
2304        while (c) {
2305            *cref = c->next;
2306            (*c->plain_cleanup_fn)((void *)c->data);
2307            c = *cref;
2308        }
2309    }
2310
(gdb) p c
$1 = 0
(gdb) p pool
$2 = (apr_pool_t *) 0x253b528
(gdb) p *$
$3 = {parent = 0x22b9cc8, child = 0x0, sibling = 0x232dd38, ref =
0x22b9cd0, cleanups = 0x253b840, free_cleanups = 0x253ba48, allocator
= 0x22b9a50, subprocesses = 0x0, abort_fn = 0x7f4cd7a72ea0, user_data
= 0x0, tag = 0x0,
  active = 0x253b500, self = 0x253b500, self_first_avail = 0x253b5a8
"��\204�L\177", pre_cleanups = 0x0, free_pre_cleanups = 0x0}
(gdb) frame 0
#0  0x00007f4cd5af7360 in ?? ()
(gdb) x/5i $pc
0x7f4cd5af7360: Cannot access memory at address 0x7f4cd5af7360
(gdb) frame 2
#2  0x00007f4cd74100dd in apr_pool_destroy (pool=0x22b9cc8) at
memory/unix/apr_pools.c:771
771             apr_pool_destroy(pool->child);
(gdb) p pool
$4 = (apr_pool_t *) 0x22b9cc8
(gdb) p *$
$5 = {parent = 0x0, child = 0x253b528, sibling = 0x0, ref = 0x0,
cleanups = 0x22b9d78, free_cleanups = 0x0, allocator = 0x22b9a50,
subprocesses = 0x0, abort_fn = 0, user_data = 0x0, tag =
0x7f4cd741b28b "apr_global_pool",
  active = 0x22b9ca0, self = 0x22b9ca0, self_first_avail = 0x22b9d48
"�\234+\002", pre_cleanups = 0x0, free_pre_cleanups = 0x0}

-- 
Alex, homepage: http://www.bennee.com/~alex/
CV: http://www.bennee.com/~alex/cv.php

Reply via email to