#BUGFIX by cg
authorClaus Gittinger <cg@exept.de>
Tue, 08 Nov 2016 19:05:11 +0100
changeset 20919 3c3e236e39d7
parent 20918 0abe093586f3
child 20920 41aec62f6587
#BUGFIX by cg class: ReadEvalPrintLoop changed: #directive:
ReadEvalPrintLoop.st
--- a/ReadEvalPrintLoop.st	Tue Nov 08 18:58:47 2016 +0100
+++ b/ReadEvalPrintLoop.st	Tue Nov 08 19:05:11 2016 +0100
@@ -575,15 +575,23 @@
 
     cmd := s nextAlphaNumericWord.
     cmd notNil ifTrue:[
-        self
-            perform:('cmd_',cmd) asMutator with:s
-            ifNotUnderstood:[
-                self errorStream
-                    nextPutAll:'?? invalid command: ';
-                    nextPutAll:cmd;
-                    nextPutAll:'. Type "#help" for help.';
-                    cr.
+        AbortAllOperationRequest handle:[:ex |
+            self errorStream nextPutLine:('Directive aborted: ', ex description)
+        ] do:[
+            (Error, ControlInterrupt) handle:[:ex |
+                self errorStream nextPutLine:('Ignored in directive: ', ex description).
+            ] do:[    
+                self
+                    perform:('cmd_',cmd) asMutator with:s
+                    ifNotUnderstood:[
+                        self errorStream
+                            nextPutAll:'?? invalid command: ';
+                            nextPutAll:cmd;
+                            nextPutAll:'. Type "#help" for help.';
+                            cr.
+                    ].
             ].
+        ].
     ].
 
     "Created: / 07-12-2006 / 18:49:17 / cg"