in reply to Strange start_tag_handlers behaviour using twig module
Hi basalto,
Not sure if this will help you or not, but I think it might have to do with the use of $twig->setStartTagHandlers. I used Data::Dumper to look at what your SubNetwork routine was receiving as arguments. The first time, it received a XML::Twig for $twig, a string scalar for $tag, and a hash for %att. Then the sub goes about and changes the start tag handlers using setStartTagHandler or setStartTagHandlers, depending on which branch of the if statement is followed. The second time SubNetwork is called, it receives only a XML::Twig and a XML::Twig::Elt. The question you're asking is "why" and unfortunately I have no idea, but perhaps my post will help spark something for you.
Regards,
Bald Man Tom
Update: Sorry, I should have mentioned before that when I was playing around with your script, I commmented out the if statement in the SubNetwork sub so that the start tag handlers wouldn't be redefined, and the second time SubNetwork was called, it received the "expected" information.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Strange start_tag_handlers behaviour using twig module
by basalto (Beadle) on Apr 11, 2008 at 00:19 UTC |