Hi, 
(yep, I'm copying tree lists because I think is a vm problem, but can be a 
seaside problem, or a pharo problem)
(yes, it can be MY problem too... but I don't think so... ;) 

I'm having this really, really strange problem (because it was working before, 
and I do not change anything... so, maybe a change in latest changes on pharo 
1.3, the version I'm using, is the cause)... 
This is the problem: 

I'm creating an application who sends an announcement, to edit something... 
this announcement ends in a WAComponent>>#call: message... 

The problem is: continuation execution fires a notification 
(WARenderNotification), and SubscriptionRegistry>>deliver:to: process the 
announcement this way: 

deliver: anAnnouncement to: subs
        
        subs do: 
                [:each | 
                [each deliver: anAnnouncement] 
                        "each is always in subs, so error will be due to each 
being last element.
                        So return, nothing more to process"
                        ifCurtailed: [self deliver: anAnnouncement to: ([subs 
after: each] on: NotFound do: [^self])]]

...and curtailedBlock is being executed... and that throws an error. 
This was working on older versions of VM, so maybe this is a recent change?

this error was confirmed in my builds, and also in latest Eliot build. Also... 
is confirmed NOT being there in older cogs or interpreter.

and btw... 

self deliver: anAnnouncement to: ([subs after: each] on: NotFound do: [^self])

shouldn't be

self deliver: anAnnouncement to: ([Array with: (subs after: each)] on: NotFound 
do: [^self])

because #deliver:to: is expecting a collection, not a registry?

thanks,
Esteban

Reply via email to