Alexander Lazarević uploaded a new version of Tools to project The Inbox:
http://source.squeak.org/inbox/Tools-laza.291.mcz==================== Summary ====================
Name: Tools-laza.291
Author: laza
Time: 26 January 2011, 1:41:13.31 pm
UUID: 6daf6a43-2737-ca44-90a4-ce11386f5bd1
Ancestors: Tools-mtf.290
Prevent that the SyntaxError window leaves a suspended compiler process behind on window close
=============== Diff against Tools-mtf.290 ===============
Item was changed:
+ ----- Method: SyntaxError>>category: (in category 'accessing') -----
- ----- Method: SyntaxError>>category: (in category 'initialization') -----
category: aSymbol
"Record the message category of method being compiled. This is used when the user corrects the error and accepts."
category := aSymbol.
!
Item was added:
+ ----- Method: SyntaxError>>release (in category 'initialize-release') -----
+ release
+ | p |
+ (debugger isNil or: [
+ (p := debugger interruptedProcess) isNil or: [
+ p isTerminated]]) ifTrue: [^self].
+
+ p terminate!
Item was changed:
+ ----- Method: SyntaxError>>setClass:code:debugger:doitFlag: (in category 'accessing') -----
- ----- Method: SyntaxError>>setClass:code:debugger:doitFlag: (in category 'initialization') -----
setClass: aClass code: aString debugger: aDebugger doitFlag: flag
| types printables badChar |
class := aClass.
debugger := aDebugger.
selector := aClass parserClass new parseSelector: aString.
types := Scanner classPool at: #TypeTable. "dictionary"
printables := '!!@#$%&*-_=+<>{}?/\,·£¢§¶ªº
Úæگ׿«»`~`' asSet.
badChar := aString detect: [:aChar | (types at: aChar asciiValue ifAbsent: [#xLetter]) == #xBinary and: [
(printables includes: aChar) not]] ifNone: [nil].
contents := badChar
ifNil: [aString]
ifNotNil: ['<<<This string contains a character (ascii value ',
badChar asciiValue printString,
') that is not normally used in code>>> ', aString].
category ifNil: [category := aClass organization categoryOfElement: selector].
category ifNil: [category := ClassOrganizer default].
doitFlag := flag!