#UI_ENHANCEMENT by Maren
class: CVSSourceCodeManager class
changed: #checkinClass:fileName:directory:module:source:logMessage:force:asBranch:
--- a/CVSSourceCodeManager.st Fri Oct 19 18:07:26 2018 +0200
+++ b/CVSSourceCodeManager.st Fri Nov 09 18:14:12 2018 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
"
COPYRIGHT (c) 1995 by Claus Gittinger
All Rights Reserved
@@ -2172,7 +2170,7 @@
newRevision newString binRevision className msg answer didMerge
modulePath time
editor checkInRepaired checkInNew didAccept emphasizedText repairedText out
- emSep force conflictResolvedManually revisionOption|
+ emSep force conflictResolvedManually revisionOption retryCount|
force := forceArg.
@@ -2752,13 +2750,25 @@
whatHappened := nil
].
] ensure:[
+ retryCount := 5.
OsError handle:[:ex |
- Dialog warn:('Warning: some problem encountered when trying to remove a temporary workfile:\\%1\\The checkin was successful, though.\Please remove those temporary files later.' withCRs
+ retryCount := retryCount - 1.
+ retryCount > 1 ifTrue:[
+ Delay waitForSeconds:0.5.
+ ex restart.
+ ].
+ Dialog warn:('Warning: some problem encountered when trying to remove a temporary workfile:
+
+%1
+
+The checkin was successful, though.
+This may be caused by a virus scanner, or other program which scans the temporary file.
+Please remove those temporary files later.' withCRs
bindWith:ex description).
ex proceed.
] do:[
- tempdir notNil ifTrue:[ tempdir recursiveRemove ].
- cmdOut notNil ifTrue:[ cmdOut remove ].
+ tempdir notNil ifTrue:[ tempdir recursiveRemove. tempdir := nil. ].
+ cmdOut notNil ifTrue:[ cmdOut remove. cmdOut := nil ].
].
].
@@ -2873,6 +2883,7 @@
"Created: / 13-03-2017 / 15:38:19 / stefan"
"Modified: / 31-03-2017 / 15:42:32 / stefan"
"Modified: / 18-05-2018 / 12:53:43 / Stefan Vogel"
+ "Modified: / 09-11-2018 / 18:09:37 / Maren"
!
checkoutModule:aModule directory:aPackage andDo:aBlock
@@ -4613,17 +4624,17 @@
"/ The repair code will be removed at some time in the future...
"/ temporary fix Felix' bad string translation:
- (aString startsWith:'§Header:') ifTrue:[
- (aString endsWith:'Exp §') ifTrue:[
+ (aString startsWith:'§Header:') ifTrue:[
+ (aString endsWith:'Exp §') ifTrue:[
fixedString := '$' , (aString copyFrom:3 to:(aString size - 2)) , '$'.
aClass isNil ifTrue:[
autoFixHolder value ifFalse:[
- Dialog information:'Attention: the CVS version string is corrupted (§-bug). Please fix it manually'.
+ Dialog information:'Attention: the CVS version string is corrupted (§-bug). Please fix it manually'.
]
] ifFalse:[
(autoFixHolder value
- or:[ Dialog confirm:('Attention: the CVS version string is corrupted in "%1" (§-bug). Fix it?' withCRs bindWith:aClass name) ]
+ or:[ Dialog confirm:('Attention: the CVS version string is corrupted in "%1" (§-bug). Fix it?' withCRs bindWith:aClass name) ]
) ifTrue:[
self updateVersionMethodOf:aClass for:fixedString.
].
@@ -4631,7 +4642,7 @@
].
].
- "/ temporary fix Jan's bad Umlaut-removal (which results in Felix's bad § being removed):
+ "/ temporary fix Jan's bad Umlaut-removal (which results in Felix's bad § being removed):
(aString startsWith:'Header: ') ifTrue:[
(aString endsWith:'Exp ') ifTrue:[
fixedString := '$' , aString , '$'.
@@ -5961,7 +5972,7 @@
"/ $-Revision: rev $
"/ $-Id: fileName rev date time user state $
"/
- (firstWord = '$Header:' or:[firstWord = '§Header:']) ifTrue:[
+ (firstWord = '$Header:' or:[firstWord = '§Header:']) ifTrue:[
d := firstWord first.
s skipSeparators.
nm := s throughAll:',v '.
@@ -5991,12 +6002,12 @@
^ info
].
- (firstWord = '$Revision:' or:[firstWord = '§Revision:']) ifTrue:[
+ (firstWord = '$Revision:' or:[firstWord = '§Revision:']) ifTrue:[
info revision:(s upToEnd asCollectionOfWords first).
^ info
].
- (firstWord = '$Id:' or:[firstWord = '§Id:']) ifTrue:[
+ (firstWord = '$Id:' or:[firstWord = '§Id:']) ifTrue:[
"/commented out by Jan Vrany, 2009/10/20
"/according to http://svnbook.red-bean.com/en/1.5/svn.advanced.props.special.keywords.html
"/svn has no support for $ Header $ expansion. Therefore