AbstractSourceCodeManager.st
changeset 4399 253988bc5ff2
parent 4398 7b8a930e2477
child 4415 af25faef1fc1
--- a/AbstractSourceCodeManager.st	Tue Feb 12 00:13:44 2019 +0100
+++ b/AbstractSourceCodeManager.st	Tue Feb 12 20:48:57 2019 +0100
@@ -2635,7 +2635,7 @@
 withClass:aClass classFileName:classFileName filedOutToTemporaryFileDo:aBlock
     "helper. fileout and eval aBlock"
 
-    |tempDir tempFile ok packageMode filter|
+    |tempDir tempFile packageMode filter|
 
     packageMode := self checkMethodPackagesOf:aClass.
     packageMode == #base ifTrue:[
@@ -2643,8 +2643,7 @@
     ].
 
     tempDir := Filename newTemporaryDirectory.
-    ok := false.
-    [
+    ^ [
         |aStream|
 
         tempFile := tempDir construct:classFileName.
@@ -2675,11 +2674,10 @@
             self reportError:'temporary fileout failed'.
             ^ false.
         ].
-        ok := aBlock value:tempFile 
+        aBlock value:tempFile 
     ] ensure:[
         tempDir recursiveRemove
     ].
-    ^ ok
 
     "
      SourceCodeManager checkinClass:Array
@@ -2688,6 +2686,7 @@
     "Modified: / 25-09-1997 / 12:16:00 / stefan"
     "Modified: / 20-08-2011 / 14:52:01 / cg"
     "Created: / 25-07-2012 / 19:38:23 / cg"
+    "Modified: / 12-02-2019 / 20:03:33 / Stefan Vogel"
 ! !
 
 !AbstractSourceCodeManager class methodsFor:'source code administration'!
@@ -4082,15 +4081,17 @@
     tmpSource2 := Filename newTemporary.
     tmpSource2 contents:source2.
     
-    [
+    list := [
         inStream := PipeStream readingFrom:('diff %1 %2' bindWith:tmpSource1 pathName with:tmpSource1 pathName ). 
         inStream isNil ifTrue:[
             ('SourceCodeManager [error]: cannot open pipe to diff ', fullName) errorPrintCR.
             ^ nil
         ].
-        list := inStream contents.
+        inStream contents.
     ] ensure:[
-        inStream close.
+        inStream notNil ifTrue:[
+            inStream close.
+        ].
         tmpSource1 remove.
         tmpSource2 remove.
     ].
@@ -4100,6 +4101,8 @@
         cachedFile contents:list.
     ].
     ^ list
+
+    "Modified: / 12-02-2019 / 20:01:35 / Stefan Vogel"
 !
 
 ensureDollarsInVersionMethod:aString