No registered users in community xowiki
in last 10 minutes
in last 10 minutes
Re: [Xotcl] filters and next
From: Uwe Zdun <zdun_at_acm.org>
Date: Fri, 19 Apr 2002 19:52:38 +0200
Hi Andriy,
this was a little bug. We have closed down the filter chain upon the "msg"
method but the filter was not done with its own next. I'll attach an xotcl.c
file that should fix the problem (the fix will also be in the next xotcl
release ... but as this is a quite unusual case we don't produce a full patch
release for this fix). Simply replace the xotcl.c file in the distribution
and re-compile ...
--uwe
On Wednesday 17 April 2002 05:46 pm, Andriy Tkachuk wrote:
> Hello! :)
>
> How it must works, when in pre/post part of filter
> object calls his procs that calls next?
> Situation like here:
>
> Class A
> A instproc msg msg {
> puts "puts: $msg"
> }
>
> Class B -superclass A
> B instproc msg msg {
> next
> }
>
> B instproc my_filter args {
> my msg "before next in filter"
> next
> }
>
> B b
>
> b filter my_filter
> b msg bb
> puts: before next in filter
>
> that's all!: there is no "puts: bb".
>
> if filter like this:
>
> B instproc my_filter args {
> my msg "before next in filter"
> next
> my msg "after next in filter"
> }
>
> then:
> "too many nested calls to Tcl_EvalObj"
>
> Thank you.
>
> _______________________________________________
> Xotcl mailing list - Xotcl_at_alice.wu-wien.ac.at
> http://alice.wu-wien.ac.at/mailman/listinfo/xotcl
Date: Fri, 19 Apr 2002 19:52:38 +0200
Hi Andriy,
this was a little bug. We have closed down the filter chain upon the "msg"
method but the filter was not done with its own next. I'll attach an xotcl.c
file that should fix the problem (the fix will also be in the next xotcl
release ... but as this is a quite unusual case we don't produce a full patch
release for this fix). Simply replace the xotcl.c file in the distribution
and re-compile ...
--uwe
On Wednesday 17 April 2002 05:46 pm, Andriy Tkachuk wrote:
> Hello! :)
>
> How it must works, when in pre/post part of filter
> object calls his procs that calls next?
> Situation like here:
>
> Class A
> A instproc msg msg {
> puts "puts: $msg"
> }
>
> Class B -superclass A
> B instproc msg msg {
> next
> }
>
> B instproc my_filter args {
> my msg "before next in filter"
> next
> }
>
> B b
>
> b filter my_filter
> b msg bb
> puts: before next in filter
>
> that's all!: there is no "puts: bb".
>
> if filter like this:
>
> B instproc my_filter args {
> my msg "before next in filter"
> next
> my msg "after next in filter"
> }
>
> then:
> "too many nested calls to Tcl_EvalObj"
>
> Thank you.
>
> _______________________________________________
> Xotcl mailing list - Xotcl_at_alice.wu-wien.ac.at
> http://alice.wu-wien.ac.at/mailman/listinfo/xotcl