Philip Martin <philip.mar...@wandisco.com> writes:

> "Bert Huijben" <b...@qqmail.nl> writes:
>
>>> -----Original Message-----
>>> From: cmpil...@apache.org [mailto:cmpil...@apache.org]
>>> Sent: donderdag 7 februari 2013 21:30
>>> To: comm...@subversion.apache.org
>>> Subject: svn commit: r1443705 -
>>> /subversion/trunk/subversion/libsvn_ra_serf/commit.c
>>> 
>>> Author: cmpilato
>>> Date: Thu Feb  7 20:30:01 2013
>>> New Revision: 1443705
>>> 
>>> URL: http://svn.apache.org/r1443705
>>> Log:
>>> Followup to r1443578, hopefully fixing some segfaults triggered on
>>> certain buildbots.
>>
>> Could this be caused by the difference between redirecting to
>> /some/subdir and http://server/some/subdir ?
>>
>> The Windows buildbot uses the configuration written by win-tests.py;
>> I'm not sure which httpd configuration the centos buildbot uses.
>
> The centos buildbot uses serf 1.0.3, APR 1.2.7 and APR-Util 1.2.7.
>
> $ gdb -arg ../../svn/.libs/lt-svn info 
> http://localhost:1531/svn-test-work/repositories/REDIRECT-TEMP-redirect_tests-1
>  --config-dir 
> /home/bt/packages/subversion-trunk/subversion/tests/cmdline/svn-test-work/local_tmp/config
>  --password rayjandom --no-auth-cache --username jrandom
> (gdb) b response_get_location
> (gdb) r
> Breakpoint 1, response_get_location (response=0xeb580f8, repos_root_url=0x0, 
>     pool=0xeb3bfa8) at subversion/libsvn_ra_serf/util.c:1000
> 1000    headers = serf_bucket_response_get_headers(response);
> (gdb) n
> 1001    location = serf_bucket_headers_get(headers, "Location");
> (gdb) 
> 1002    if (location == NULL)
> (gdb) 
> 1007    if (*location == '/')
> (gdb) 
> 1009        const char *root_url = repos_root_url;
> (gdb) p *location
> $2 = 47 '/'
> (gdb) n
> 1011        while (! svn_uri_is_root(root_url, strlen(root_url)))
> (gdb) n
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00002b82e9c48951 in response_get_location (response=0xeb580f8, 
>     repos_root_url=0x0, pool=0xeb3bfa8)
>     at subversion/libsvn_ra_serf/util.c:1011
> 1011        while (! svn_uri_is_root(root_url, strlen(root_url)))

What I should have printed:

(gdb) p location
$3 = 0x16d36de8 "/svn-test-work/repositories/redirect_tests-1"
(gdb) p root_url
$4 = 0x0
(gdb) p repos_root_url
$5 = 0x0

-- 
Philip

Reply via email to