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

SVN 1.4.2 (Win32) crashes on svn status

From: Udo Schifferdecker <s_decker_at_yahoo.com>
Date: 2006-11-30 09:35:08 CET

I get a crash in libapr.dll when issuing a "svn status" (see attached call stack).
I am running XP SP2 with all patches.

The svn status is called for 3 WCs. The crash disappears when I change the command line a little bit though.

Something like this crashes:

> cd \
> svn status --non-interactive --ignore-externals _MyWork\_Products\ProductNameA1\DEV\5.0_SP_1_Patch2 _MyWork\_Products\ProductNameA1\DEV\5.0_SP_2_Dev _MyWork\_Products\ProductNameA1\DEV\trunk

This works (because the paths are shorter ?):

> cd \_MyWork\_Products\ProductNameA1\DEV
> svn status --non-interactive --ignore-externals 5.0_SP_1_Patch2 5.0_SP_2_Dev trunk

With SVN 1.3.x I never had problems with long paths in the cmd. The problems started with 1.4.0.
I used a workaround like in the example above. But now 1.4.2 crashes even with the shortened paths.
Is this a known bug?

Udo

libapr.dll!find_entry(apr_hash_t * ht=0x0037d2a4, const void * key=0x01284140, int klen=33, const void * val=0x00000000) Line 242 + 0x15 bytes C
libapr.dll!apr_hash_get(apr_hash_t * ht=0x0037d250, const void * key=0x01284140, int klen=-1) Line 302 + 0x16 bytes C
svn.exe!get_xlate_handle_node(xlate_handle_node_t * * ret=0x0012f9bc, const char * topage=0x012840e8, const char * frompage=0x004f4bcc, const char * userdata_key=0x00b8b958, apr_pool_t * pool=0x004479f6) Line 198 C
svn.exe!svn_cmdline_cstring_from_utf8(const char * * dest=0x012840e8, const char * src=0x77c2fca0, apr_pool_t * pool=0x00b8b958) Line 197 + 0x15 bytes C
svn.exe!svn_cmdline_printf(apr_pool_t * pool=0x00b8b958, const char * fmt=0x004d75f4, ...) Line 250 + 0x11 bytes C
svn.exe!print_status(const char * path=0x01284098, int detailed=0, int show_last_committed=0, int repos_locks=0, svn_wc_status2_t * status=0x012adaf0, apr_pool_t * pool=0x00b8b958) Line 192 + 0x74 bytes C
svn.exe!svn_cl__print_status(const char * path=0x012ada88, svn_wc_status2_t * status=0x012adaf0, int detailed=0, int show_last_committed=0, int skip_unrecognized=0, int repos_locks=0, apr_pool_t * pool=0x00b8b958) Line 342 + 0x29 bytes C
svn.exe!print_status(void * baton=0x0012fd9c, const char * path=0x012ada88, svn_wc_status2_t * status=0x012adaf0) Line 132 + 0x1e bytes C
svn.exe!tweak_status(void * baton=0x0012fce8, const char * path=0x012ada88, svn_wc_status2_t * status=0x012adaf0) Line 73 + 0xd bytes C
svn.exe!send_unversioned_item(const char * name=0x00000001, int path_kind=2, int path_special=0, svn_wc_adm_access_t * adm_access=0x00d7cbe8, apr_array_header_t * patterns=0x012adaf0, apr_hash_t * externals=0x012836f0, int no_ignore=0, apr_hash_t * repos_locks=0x00000000, const char * repos_root=0x00000000, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, apr_pool_t * pool=0x012ada50) Line 662 + 0xb bytes C
svn.exe!get_dir_status(edit_baton * eb=0x012aa708, const svn_wc_entry_t * parent_entry=0x00d7c4d0, svn_wc_adm_access_t * adm_access=0x00d7cbe8, const char * entry=0x012ada50, apr_array_header_t * ignores=0x01283a10, int descend=1, int get_all=0, int no_ignore=0, int skip_this_dir=0, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, svn_error_t * (void *)* cancel_func=0x00406dd0, void * cancel_baton=0x00000000, apr_pool_t * pool=0x012a7a38) Line 928 + 0x3f bytes C
svn.exe!handle_dir_entry(edit_baton * eb=0x012836a0, svn_wc_adm_access_t * adm_access=0x00d7c400, const char * name=0x00d7c700, const svn_wc_entry_t * dir_entry=0x00d7c4d0, const svn_wc_entry_t * entry=0x00d7ccb8, int kind=2, int special=14142440, apr_array_header_t * ignores=0x01283a10, int descend=1, int get_all=0, int no_ignore=0, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, svn_error_t * (void *)* cancel_func=0x00406dd0, void * cancel_baton=0x00000000, apr_pool_t * pool=0x012a7a38) Line 739 + 0x41 bytes C
svn.exe!get_dir_status(edit_baton * eb=0x00d7c670, const svn_wc_entry_t * parent_entry=0x00b8bbb0, svn_wc_adm_access_t * adm_access=0x00d7c400, const char * entry=0x012a7a38, apr_array_header_t * ignores=0x01283a10, int descend=1, int get_all=0, int no_ignore=0, int skip_this_dir=0, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, svn_error_t * (void *)* cancel_func=0x00406dd0, void * cancel_baton=0x00000000, apr_pool_t * pool=0x00d7c700) Line 967 + 0x58 bytes C
svn.exe!handle_dir_entry(edit_baton * eb=0x012836a0, svn_wc_adm_access_t * adm_access=0x00b8baf0, const char * name=0x00b8bff8, const svn_wc_entry_t * dir_entry=0x00b8bbb0, const svn_wc_entry_t * entry=0x00d7c4d0, int kind=2, int special=14140416, apr_array_header_t * ignores=0x01283a10, int descend=1, int get_all=0, int no_ignore=0, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, svn_error_t * (void *)* cancel_func=0x00406dd0, void * cancel_baton=0x00000000, apr_pool_t * pool=0x00ba0990) Line 739 + 0x41 bytes C
svn.exe!get_dir_status(edit_baton * eb=0x00b8bf68, const svn_wc_entry_t * parent_entry=0x00000000, svn_wc_adm_access_t * adm_access=0x00b8baf0, const char * entry=0x00ba0990, apr_array_header_t * ignores=0x01283a10, int descend=1, int get_all=0, int no_ignore=0, int skip_this_dir=0, void (void *, const char *, svn_wc_status2_t *)* status_func=0x00419050, void * status_baton=0x0012fce8, svn_error_t * (void *)* cancel_func=0x00406dd0, void * cancel_baton=0x00000000, apr_pool_t * pool=0x00b8bff8) Line 967 + 0x58 bytes C
svn.exe!close_edit(void * edit_baton=0x01283a10, apr_pool_t * pool=0x00b8b958) Line 1878 + 0x32 bytes C
svn.exe!close_edit(void * edit_baton=0x01283ce0, apr_pool_t * pool=0x00b8b958) Line 334 + 0xe bytes C
svn.exe!svn_client_status2(long * result_rev=0x0012fd4c, const char * path=0x00b86610, const svn_opt_revision_t * revision=0x0012fd8c, void (void *, const char *, svn_wc_status2_t *)* status_func=0x004068e0, void * status_baton=0x0012fd9c, int recurse=1, int get_all=0, int update=0, int no_ignore=0, int ignore_externals=1, svn_client_ctx_t * ctx=0x00b325e0, apr_pool_t * pool=0x00b8baf0) Line 331 + 0xc bytes C
svn.exe!do_status(svn_cl__opt_state_t * opt_state=0x0012fe20, const char * target=0x00b86610, const svn_opt_revision_t * rev=0x0012fd8c, void * status_baton=0x0012fd9c, svn_client_ctx_t * ctx=0x00b325e0, apr_pool_t * pool=0x00b8b958) Line 167 + 0x3e bytes C
svn.exe!svn_cl__status(apr_getopt_t * os=0x00b860f0, void * baton=0x00000002, apr_pool_t * pool=0x00b32068) Line 245 + 0x3d bytes C
svn.exe!main(int argc=7, const char * * argv=0x003740f8) Line 1485 + 0x10 bytes C
svn.exe!_mainCRTStartup() + 0xe3 bytes

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu Nov 30 09:36:00 2006

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