RE: [Bayonne-dialogic] bayonne locks a line in state "step"
"Julien Chavanton" <[email protected]>
| Newsgroups | gmane.comp.gnu.bayonne.devel |
|---|---|
| Message-ID | <[email protected]> |
Interresting , this should be posted to bayonne-devel, our fellow working with ccscript should be aware about this. Thanks, Julien -----Original Message----- From: infos chez fdrconseil [mailto:[email protected]] Sent: Sat 2/19/2005 09:43 AM To: infos chez fdrconseil; Julien Chavanton; Jonathan Wolfe; [email protected] Cc: David Sugar Subject: Re: [Bayonne-dialogic] bayonne locks a line in state "step" The script given as an exploit to reproduce the problem (bugSortantRedem.scr) has a bug in it. Let me explain and let's learn something : Remeber the following lines in the script : start.group did bugSortantRedem::Calling goto ::Waiting The script starts a new thread (start.group ....) and then "goto" a block where we are waiting for an event coming from the started child. Under some circumstances (heavy load), the child is running faster than the parent and the event is sent by the child BEFORE the parent is going to the ::Waiting block. The strange thing is that [starting a thread + Dialing + reporting an event to the parent] is executed faster than a simple "goto"... but it happens !! Adding the following code in the ::Loop block fixes the problem : ^event if %session.eventsendermsg == "OK" then goto ::WaitForEnd else goto ::Loop endif The lesson is : when you are waiting for an event, never think it'll be raised LATER. FdR (*#) -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ _______________________________________________ Bayonne-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bayonne-devel