he, no... I was too optimistic, that solves just part of the problem, not completely :(
Now I'm debugging to try figure out what's happening... once I get it, I will
provide a test :)
Cheers,
Esteban
El 15/01/2011, a las 10:41a.m., Tudor Girba escribió:
Excellent catch, Esteban!
I know about this problem since half a year, but I could not figure out where the problem
was.
I opened a ticket:
http://code.google.com/p/moose-technology/issues/detail?id=492
Before integrating the fix, could you provide a test case that fails with the current
implementation?
Cheers,
Doru
On 15 Jan 2011, at 14:29, Esteban Lorenzano wrote:
> Hi,
> I noticed that in some complex updating between panels, using an external announcer,
some of the update subscriptions were not removed when the browser is closed. I debugged a
little and I founded that this implementation:
>
> GLMUpdateAction>>unregisterFromAllAnnouncements
> announcerObjects ifNotNil: [
> announcerObjects do: [:each |
> each unsubscribe: self ] ]
>
> is bugged, because if announcerObjects are not previously computed (and in some cases
that's what happens), the subscription is not removed.
> This implementation (just using the accessor instead the direct object), solves the
problem (but I don't know is it's a right fix, and it should be a fix in other
place)
>
> GLMUpdateAction>>unregisterFromAllAnnouncements
> self announcerObjects ifNotNil: [ :objects |
> objects do: [:each |
> each unsubscribe: self ] ]
>
> Cheers,
> Esteban
> _______________________________________________
> Moose-dev mailing list
> Moose-dev(a)iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"In a world where everything is moving ever faster,
one might have better chances to win by moving slower."
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev