[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Another crash in ra_serf in 1.8.0

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Thu, 20 Jun 2013 20:19:43 +0200

Hi,

Another crash that's climbing up in the crash report statistics for TSVN.
Seems to be related to the previously discussed problem with checkouts
in TSVN.

The stack trace:

BowPad

libsvn_tsvn.dll!svn_ra_serf__credentials_callback(char * * username=0xffffffffffffffff, char * * password=0x0000000002ba0210, serf_request_t * request=0x0000000002ba0280, void * baton=0x0000000002c12588, int code=407, const char * authn_type=0x000007fee0bf0b58, const char * realm=0x0000000002c12b60, apr_pool_t * pool=0x0000000002bb8258) Line 1789 C
libsvn_tsvn.dll!serf__handle_basic_auth(int code=-524813808, serf_request_t * request=0x0000000002ba8368, serf_bucket_t * response=0x0000000000000001, const char * auth_hdr=0x0000000002bb30be, const char * auth_attr=0x0000000002bb30be, void * baton=0x0000000002bac270, apr_pool_t * pool=0x0000000002ba0198) Line 89 C
libsvn_tsvn.dll!handle_auth_header(void * baton=0x0000000002bb2fb8, const char * key=0x0000000002bac270, const char * header=0x0000000002ba8368) Line 223 C
libsvn_tsvn.dll!dispatch_auth(int code=45834840, serf_request_t * request=0x0000000002bac270, serf_bucket_t * response=0x0000000000000197, void * baton=0x0000000002bb24b8, apr_pool_t * pool=0x0000000002bb4238) Line 289 C
libsvn_tsvn.dll!serf__handle_auth_response(int * consumed_response=0x0000000000000000, serf_request_t * request=0x0000000062f73368, serf_bucket_t * response=0x0000000002bae419, void * baton=0x0000000000000002, apr_pool_t * pool=0x0000000002bb4238) Line 353 C
libsvn_tsvn.dll!handle_response(serf_request_t * request=0x0000000000000001, apr_pool_t * pool=0x0000000000000000) Line 859 C
libsvn_tsvn.dll!read_from_connection(serf_connection_t * conn=0x0000000002bb4238) Line 995 C
libsvn_tsvn.dll!serf__process_connection(serf_connection_t * conn=0x0000000002c127f8, short events=0) Line 1108 C
libsvn_tsvn.dll!serf_event_trigger(serf_context_t * s=0x0000000002c127f8, void * serf_baton=0x0000000002ba0210, const apr_pollfd_t * desc=0x0000000002baa1e8) Line 240 C
libsvn_tsvn.dll!serf_context_run(serf_context_t * ctx=0x0000000002b9e270, int duration=45744656, apr_pool_t * pool=0x0000000002ba0210) Line 308 C
libsvn_tsvn.dll!svn_ra_serf__context_run_wait(int * done=0x0000000002baa1e8, svn_ra_serf__session_t * sess=0x0000000002b9e188, apr_pool_t * scratch_pool=0x0000000002b9e620) Line 743 C
libsvn_tsvn.dll!svn_ra_serf__exchange_capabilities(svn_ra_serf__session_t * serf_sess=0x0000000002b9e518, const char * * corrected_url=0x000000000449efd1, apr_pool_t * pool=0x0000000002c12558) Line 488 C
libsvn_tsvn.dll!svn_ra_serf__open(svn_ra_session_t * session=0x0000000002b9e248, const char * * corrected_url=0x0000000002b9e4b8, const char * session_URL=0x0000000002b9e248, const svn_ra_callbacks2_t * callbacks=0x0000000002ba21a8, void * callback_baton=0x0000000002b99ac8, apr_hash_t * config=0x0000000002b982a0, apr_pool_t * pool=0x0000000002b9e188) Line 483 C
libsvn_tsvn.dll!svn_ra_open4(svn_ra_session_t * * session_p=0x000000000449f2c0, const char * * corrected_url_p=0x000000000449f200, const char * repos_URL=0x0000000000000002, const char * uuid=0x0000000000000000, const svn_ra_callbacks2_t * callbacks=0x0000000002b99af0, void * callback_baton=0x0000000002b99ac8, apr_hash_t * config=0x0000000002b982a0, apr_pool_t * pool=0x0000000002b98158) Line 482 C
libsvn_tsvn.dll!svn_client__open_ra_session_internal(svn_ra_session_t * * ra_session=0x000000000449f2c0, const char * * corrected_url=0x000000000449f2b8, const char * base_url=0x000000000449f590, const char * base_dir_abspath=0x0000000100000001, const apr_array_header_t * commit_items=0x0000000000000000, int write_dav_props=0, int read_dav_props=0, svn_client_ctx_t * ctx=0x0000000002b98df0, apr_pool_t * result_pool=0x0000000002b98158, apr_pool_t * scratch_pool=0x0000000002b98158) Line 393 C
libsvn_tsvn.dll!svn_client_info3(const char * abspath_or_url=0x000000000449f670, const svn_opt_revision_t * peg_revision=0x00000000001d6168, const svn_opt_revision_t * revision=0x000000000449f590, svn_depth_t depth=71956080, int fetch_excluded=1, int fetch_actual_only=1, const apr_array_header_t * changelists=0x0000000000000000, svn_error_t * (void *, const char *, const svn_client_info2_t *, apr_pool_t *) * receiver=0x000000013f4d09e0, void * receiver_baton=0x000000000449f670, svn_client_ctx_t * ctx=0x0000000002b98df0, apr_pool_t * pool=0x0000000002b98158) Line 300 C
TortoiseProc.exe!SVNInfo::GetFirstFileInfo(const CTSVNPath & path={...}, SVNRev pegrev={...}, SVNRev revision={...}, svn_depth_t depth=svn_depth_empty, bool fetchExcluded=112, bool fetchActualOnly=112) Line 136 C++

The crash is in libsvn_ra_serf\util.c, Snippet
svn_ra_serf__credentials_callback, line 1789:
BowPad *username = apr_pstrdup(pool, session->proxy_username);
*password = apr_pstrdup(pool, session->proxy_password);

The code here is 407, not 401.

Crashdumps are here:
https://www.crash-server.com/Problem.aspx?ClientID=tsvn&ProblemID=26622

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest interface to (Sub)version control
    /_/   \_\     http://tortoisesvn.net
Received on 2013-06-20 20:20:18 CEST

This is an archived mail posted to the Subversion Dev mailing list.