Hi list, I just subscribed, and this is my first post to the list.
The class Promise has a bug in printOn:. It is supposed to print '(???)' if its value is not yet known. A missing return causes it to continue to print the actual value, which will hang until the value is known. Same problem if Promise has an error. Here's a trivial patch. /Tommy diff --git a/kernel/ValueAdapt.st b/kernel/ValueAdapt.st index d2957fd..95bdfb0 100644 --- a/kernel/ValueAdapt.st +++ b/kernel/ValueAdapt.st @@ -262,8 +262,8 @@ initialized, I suspend the process until a value has been assigned.'> <category: 'printing'> aStream print: self class. - self hasValue ifFalse: [ aStream nextPutAll: '(???)' ]. - self hasError ifTrue: [ aStream nextPutAll: '(Error!)' ]. + self hasValue ifFalse: [ ^aStream nextPutAll: '(???)' ]. + self hasError ifTrue: [ ^aStream nextPutAll: '(Error!)' ]. aStream nextPut: $(; _______________________________________________ help-smalltalk mailing list help-smalltalk@gnu.org https://lists.gnu.org/mailman/listinfo/help-smalltalk