It looks like a confusion between array and table:

Program terminated with signal 11, Segmentation fault.
#0  0xff032198 in strlen () from /lib/libc.so.1
(gdb) bt full
#0  0xff032198 in strlen () from /lib/libc.so.1
No symbol table info available.
#1 0xff3301ec in apr_array_pstrcat (p=0x5f0730, arr=0x52b718, sep=32 ' ') at .../sources/apr/trunk/r1059819/tables/apr_tables.c:246
        cp = 0x3 <Address 0x3 out of bounds>
        res = 0x5f0730 ""
        strpp = (char **) 0x52b8c0
        len = 12
        i = 3
#2 0xfe2c1dd8 in match_headers (r=0x5f0770) at .../sources/httpd/trunk/r1059644/modules/metadata/mod_setenvif.c:682
        arr = (const apr_array_header_t *) 0x52b718
        sconf = (sei_cfg_rec *) 0x52bf70
        entries = (sei_entry *) 0x52bf90
        elts = (const apr_table_entry_t *) 0x52b8b8
        val = 0x548ff3 "1"
        err = 0xffffffff <Address 0xffffffff out of bounds>
        val_len = 1
        i = 2
        j = 3
        last_name = 0x549010 "R2"
regm = {{rm_so = 0, rm_eo = 17}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}, {rm_so = -1, rm_eo = -1}}


and

(gdb) dump_string_array arr
[0] 'VAR_ONE'
[1] 'set'
[2Cannot access memory at address 0x5641525f

(gdb) dump_table arr
[0] 'VAR_ONE'='set'
[1] 'VAR_TWO'='set'
[2] 'VAR_THREE'='set'

Regards,

Rainer

Reply via email to