• R/O
  • SSH
  • HTTPS

tortoisesvn: Commit


Commit MetaInfo

Revision28231 (tree)
Time2018-05-26 00:03:37
Authorstefankueng

Log Message

Merged revision(s) r28224, r28229, r28230 from trunk:
* Remove custom base address.
* Patch from Patrick Steinhardt: When you try to commit to a server, but the commit itself is getting rejected because of a hook, then TortoiseSVN will prompt the user to unbreak the lock. Outputting this error message is wrong, though, as rejection through a hook will not cause any locks to be retained after the operation. The issue stems from the macro SVN_ERR_IS_UNLOCK_ERROR, which TortoiseSVN uses to determine whether unlock instructions shall be appended to the error messages. Because Subversion allows pre-lock hooks, an SVN_ERR_REPOS_HOOK_FAILURE message is also considered an unlock error, even though in most cases it is not. And even if it was an error regarding the pre-lock hook, the user would not be able to fix that by unlocking something in his working copy, as the hook is server-side and only used to check whether a lock shall be granted at all. Fix the erroneous message by only emitting it if the error is _not_ an SVN_ERR_REPOS_HOOK_FAILURE. The attached patch does that.
* Improve the labels and texts in the rename dialog when using it to get the name for a copy url from the repo browser.

Change Summary

Incremental Difference

--- branches/1.10.x/src/TortoiseProc/RenameDlg.h (revision 28230)
+++ branches/1.10.x/src/TortoiseProc/RenameDlg.h (revision 28231)
@@ -1,6 +1,6 @@
1-// TortoiseSVN - a Windows shell extension for easy version control
1+// TortoiseSVN - a Windows shell extension for easy version control
22
3-// Copyright (C) 2003-2006, 2009-2010, 2013-2015, 2017 - TortoiseSVN
3+// Copyright (C) 2003-2006, 2009-2010, 2013-2015, 2017-2018 - TortoiseSVN
44
55 // This program is free software; you can redistribute it and/or
66 // modify it under the terms of the GNU General Public License
@@ -56,6 +56,7 @@
5656 CString m_name;
5757 CString m_windowtitle;
5858 CString m_label;
59+ CString m_infoLabel;
5960
6061 private:
6162 bool m_bBalloonVisible;
--- branches/1.10.x/src/TortoiseProc/RepositoryBrowser.cpp (revision 28230)
+++ branches/1.10.x/src/TortoiseProc/RepositoryBrowser.cpp (revision 28231)
@@ -1,6 +1,6 @@
11 // TortoiseSVN - a Windows shell extension for easy version control
22
3-// Copyright (C) 2003-2017 - TortoiseSVN
3+// Copyright (C) 2003-2018 - TortoiseSVN
44
55 // This program is free software; you can redistribute it and/or
66 // modify it under the terms of the GNU General Public License
@@ -4122,6 +4122,8 @@
41224122 CRenameDlg dlg(this);
41234123 dlg.m_name = path.GetSVNPathString();
41244124 dlg.m_windowtitle.LoadString(IDS_REPOBROWSE_COPY);
4125+ dlg.m_label.LoadString(IDS_REPO_BROWSEURL);
4126+ dlg.m_infoLabel.Format(IDS_PROC_NEWNAMECOPY, (LPCWSTR)path.GetSVNPathString());
41254127 dlg.SetRenameRequired(GetRevision().IsHead() != FALSE);
41264128 CStringUtils::RemoveAccelerators(dlg.m_windowtitle);
41274129 if (dlg.DoModal() == IDOK)
--- branches/1.10.x/src/TortoiseProc/RenameDlg.cpp (revision 28230)
+++ branches/1.10.x/src/TortoiseProc/RenameDlg.cpp (revision 28231)
@@ -1,6 +1,6 @@
1-// TortoiseSVN - a Windows shell extension for easy version control
1+// TortoiseSVN - a Windows shell extension for easy version control
22
3-// Copyright (C) 2003-2011, 2013-2015, 2017 - TortoiseSVN
3+// Copyright (C) 2003-2011, 2013-2015, 2017-2018 - TortoiseSVN
44
55 // This program is free software; you can redistribute it and/or
66 // modify it under the terms of the GNU General Public License
@@ -87,7 +87,9 @@
8787 if (!m_label.IsEmpty())
8888 SetDlgItemText(IDC_LABEL, m_label);
8989
90- if (!m_name.IsEmpty())
90+ if (!m_infoLabel.IsEmpty())
91+ SetDlgItemText(IDC_RENINFOLABEL, m_infoLabel);
92+ else if (!m_name.IsEmpty())
9193 {
9294 CString sTmp;
9395 sTmp.Format(IDS_RENAME_INFO, (LPCWSTR)m_name);
--- branches/1.10.x/src/Changelog.txt (revision 28230)
+++ branches/1.10.x/src/Changelog.txt (revision 28231)
@@ -12,6 +12,9 @@
1212 contained non-ASCII chars. (Stefan)
1313 - BUG: Showing the log if the repo url contained
1414 special chars sometimes failed. (Stefan)
15+- BUG: Wrong behavior for 'lock' error. (Patrick Steinhardt)
16+- CHG: Improved labels and text in dialog when
17+ creating a copy in repo browser. (Stefan)
1518
1619 Version 1.10.0
1720 See the release notes here:
--- branches/1.10.x/src/SVN/SVNBase.cpp (revision 28230)
+++ branches/1.10.x/src/SVN/SVNBase.cpp (revision 28231)
@@ -1,6 +1,6 @@
11 // TortoiseSVN - a Windows shell extension for easy version control
22
3-// Copyright (C) 2010-2016 - TortoiseSVN
3+// Copyright (C) 2010-2016, 2018 - TortoiseSVN
44
55 // This program is free software; you can redistribute it and/or
66 // modify it under the terms of the GNU General Public License
@@ -186,7 +186,8 @@
186186 // the lock has already been broken from another working copy
187187 temp.LoadString(IDS_SVNERR_UNLOCKFAILEDNOLOCK);
188188 }
189- else if (SVN_ERR_IS_UNLOCK_ERROR(Err))
189+ else if ((Err->apr_err != SVN_ERR_REPOS_HOOK_FAILURE) &&
190+ SVN_ERR_IS_UNLOCK_ERROR(Err))
190191 {
191192 // if you want to break the lock, use the "check for modifications" dialog
192193 temp.LoadString(IDS_SVNERR_UNLOCKFAILED);
Show on old repository browser