Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Chatterbox XML Ticker broken

by chipmunk (Parson)
on Feb 12, 2002 at 17:22 UTC ( [id://144917]=monkdiscuss: print w/replies, xml ) Need Help??

After the move to the new servers, I discovered a curious bug in the Chatterbox XML ticker. It is randomly either encoding or not encoding ampersands, angle brackets, and square brackets. This inconsistent encoding causes confusion in the Chatterbox clients. In the Tk client, it breaks the caching of messages, causing the same messages to be printed over and over again.

To verify that the problem is with the ticker and not the client, I viewed the source of the ticker in lynx (lynx -source 'http://www.perlmonks.org/index.pl?node=chatterbox+xml+ticker'). Here are two examples that demonstrate the problem. Only the relevant message is shown in each example.

<CHATTER><INFO site="http://perlmonks.org" sitename="Perl Monks">Rende +red by the Chatterbox XML Ticker</INFO> <message user_id="43546" author="chipmunk" time="2002020815340 +7"> test &amp;nbsp;</message> </CHATTER> <CHATTER><INFO site="http://perlmonks.org" sitename="Perl Monks">Rende +red by the Chatterbox XML Ticker</INFO> <message user_id="43546" author="chipmunk" time="2002020815340 +7"> test &nbsp;</message> </CHATTER>
<CHATTER><INFO site="http://perlmonks.org" sitename="Perl Monks">Rende +red by the Chatterbox XML Ticker</INFO> <message user_id="43546" author="chipmunk" time="2002021212120 +5"> test 0 &lt; 1</message> </CHATTER> <CHATTER><INFO site="http://perlmonks.org" sitename="Perl Monks">Rende +red by the Chatterbox XML Ticker</INFO> <message user_id="43546" author="chipmunk" time="2002021212120 +5"> test 0 < 1</message> </CHATTER>
It would be a great help to all the users of chatterbox clients to get this bug fixed. Unfortunately, there's no reliable way to work around it.

Replies are listed 'Best First'.
Re: Chatterbox XML Ticker broken
by mirod (Canon) on Feb 12, 2002 at 19:09 UTC

    An old trick I used when fixing crappy SGML data: s{<(\W)}{&lt;$1}g;

    Now that I think of it you can also use lookahead to get elegance points: s{<(?=\W)}{&lt;}g; (untested), which should also get you correcteness points as it also works for << too, contrary to my first attempt.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: monkdiscuss [id://144917]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (5)
As of 2024-03-28 13:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found