Hi
Using Tortoise 1.6.99.17310 (snapshot 29th of September 2009) on WinXP SP3 I encountered a subversion exception by doing the following:
1. Having a branch A with some minor local modification.
2. Merged a range of revisions from another branch B into the branch A 3. During merging I got some conflicts in branch A. (Not related to the local modification) 4. Aborted branch process.
5. Saved the local modification form point 1 to a patch.
6. Did a revert on the root of the branch A selecting everything.
(containing all conflicted files and all modified files from point 1.)
I'd expected either the whole working copy to be resetted to it's base revision or a message box requesting to do a cleanup first.
What happened was message box containg the text:
Subversion encountered a serious problem.
Please take the time to report this on our mailing list
With as much information as possible about what
you were trying to do.
Subversion reported the following:
In file
'D:\Development\SVN\Releases\TortoiseSVN-1.6.5\ext\subversion\subversion\libsvn_wc\tree_conflicts.c'
line 568: assertion failed (strcmp(dir_path, svn_path_dirname(victim_path,
pool)) == 0)
Looking a bit closer to the problem I noticed, that the exception occurs only when reverting a file with:
"Text status" = "normal, tree conflict" and "Property status" "normal". Having "Property status" "normal"
removed (happened after aborting a svn command during debug session) revert doesn't report the exception anymore.
Instead a message box requesting a cleanup is shown.
With Visual Studio I can get the following callstack:
_____________________________________________________________________________________________________________________________________________________
TortoiseProc.exe!SVN::GetErrorString(svn_error_t * Err=0x029fcb40, int wrap=32176688) Zeile 348 + 0xd Bytes
TortoiseProc.exe!svn_error_handle_malfunction(int can_return=1, const char * file=0x0071af28, int line=570, const char * expr=0x0071b134) Zeile 2935
TortoiseProc.exe!svn_wc__loggy_del_tree_conflict(svn_stringbuf_t * * log_accum=0x01eafb54, const char * victim_path=0x02920180, svn_wc_adm_access_t * adm_access=0x01451880, apr_pool_t * pool=0x01451760) Zeile 570 + 0x50 Bytes
TortoiseProc.exe!svn_wc__del_tree_conflict(const char * victim_path=0x02920180, svn_wc_adm_access_t * adm_access=0x01451880, apr_pool_t * pool=0x01451760) Zeile 492 + 0x23 Bytes
TortoiseProc.exe!revert_internal(const char * path=0x02920180, svn_wc_adm_access_t * parent_access=0x01451880, svn_depth_t depth=svn_depth_empty, int use_commit_times=0, apr_hash_t * changelist_hash=0x00000000, svn_error_t * (void *)* cancel_func=0x0044eba0, void * cancel_baton=0x0012eeb0, void (void *, const svn_wc_notify_t *, apr_pool_t *)* notify_func=0x0044e877, void * notify_baton=0x0012eeb0, apr_pool_t * pool=0x01451760) Zeile 2267 + 0x8 Bytes
TortoiseProc.exe!svn_wc_revert3(const char * path=0x02920180, svn_wc_adm_access_t * parent_access=0x01451880, svn_depth_t depth=svn_depth_empty, int use_commit_times=0, const apr_array_header_t * changelists=0x014607c8, svn_error_t * (void *)* cancel_func=0x0044eba0, void * cancel_baton=0x0012eeb0, void (void *, const svn_wc_notify_t *, apr_pool_t *)* notify_func=0x0044e877, void * notify_baton=0x0012eeb0, apr_pool_t * pool=0x01451760) Zeile 2384 + 0x33 Bytes
TortoiseProc.exe!revert(const char * path=0x02920180, svn_depth_t depth=svn_depth_empty, int use_commit_times=0, const apr_array_header_t * changelists=0x014607c8, svn_client_ctx_t * ctx=0x00000000, apr_pool_t * pool=0x01451760) Zeile 78 + 0x27 Bytes
TortoiseProc.exe!svn_client_revert2(const apr_array_header_t * paths=0x014607e8, svn_depth_t depth=svn_depth_empty, const apr_array_header_t * changelists=0x014607c8, svn_client_ctx_t * ctx=0x00000000, apr_pool_t * pool=0x01460788) Zeile 136 + 0x14 Bytes
TortoiseProc.exe!SVN::Revert(const CTSVNPathList & pathlist={...}, const CStringArray & changelists={...}, bool recurse=false) Zeile 455 + 0x3f Bytes
_____________________________________________________________________________________________________________________________________________________
Whereas:
victim_path 0x02920180 "C:/SVNDaten/cssw/Branches/Generation_2007/PS9550_PDB_Servo_Rev2/CS_Commons/Tools" const char *
adm_access 0x01451880 {wc_format=10 path=0x014518a8 "C:/SVNDaten/cssw/Branches/Generation_2007/PS9550_PDB_Servo_Rev2/CS_Commons/Tools" type=svn_wc__adm_access_write_lock ...} svn_wc_adm_access_t *
wc_format 10 int
path 0x014518a8 "C:/SVNDaten/cssw/Branches/Generation_2007/PS9550_PDB_Servo_Rev2/CS_Commons/Tools" const char *
type svn_wc__adm_access_write_lock svn_wc__adm_access_type
lock_exists 1 int
shared 0x00000000 {set=??? } svn_wc__adm_shared_t *
set_owner 0 int
entries 0x01abc758 apr_hash_t *
entries_hidden 0x01abc758 apr_hash_t *
wcprops 0x00000000 apr_hash_t *
pool 0x01451760 apr_pool_t *
pool 0x01451760 apr_pool_t *
log_accum 0x01eafb54 svn_stringbuf_t * *
dir_path 0x014518a8 "C:/SVNDaten/cssw/Branches/Generation_2007/PS9550_PDB_Servo_Rev2/CS_Commons/Tools" const char *
The client is connected via https to a VisualSVN server version 1.6.5 with FSFS database on a Win2003 server.
Is there a chance to get this bug fixed?
Kind regards,
Markus
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2401539
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2009-09-29 11:27:25 CEST