Opened 11 years ago

Closed 11 years ago

#6352 closed defect

Pidgin mangles multi-line messages?

Reported by: glebfrank Owned by: lschiere
Milestone: Component: unclassified
Version: 2.4.1 Keywords:
Cc:

Description

I'm running Pidgin on Ubuntu Hardy, and I use it over XMPP. I noticed that when I get messages with more than one line, all the lines but the first get mangled: the first few words seem to be skipped.

For example, when somebody sends me:

first line foo_bar: baz foo: bar baz foo/bar: baz foo: bar_baz foo:bar baz foo bar baz baz: bar foo (just in case it doesn't like foo)

what I get is:

first line baz baz baz bar_baz baz baz foo doesn't like foo)

The first line is always fine.

My correspondent is running Pidgin 2.4.3, I have 2.4.1, and the mangling occurs in both directions. Another correspondent of mine uses Miranda, and messages go through fine (again, in both directions!)

Change History (5)

comment:1 Changed 11 years ago by glebfrank

Ah great. Let me try this again. When somebody sends me:

first line
foo_bar: baz
foo: bar baz
foo/bar: baz
foo: bar_baz
foo:bar baz
foo bar baz
baz: bar foo
(just in case it doesn't like foo)

what I get is:

first line
baz
baz
baz
bar_baz
baz
baz
foo
doesn't like foo)

The first line is always fine.

comment:2 Changed 11 years ago by deryni

  • pending changed from 0 to 1

Do you or your buddy have any plugins loaded? Can you open the Help->Debug Window and paste the xml output of you sending a message and receiving a message both for the good and mangled cases?

comment:3 Changed 11 years ago by glebfrank

  • pending changed from 1 to 0

I only have the message notification plugin turned on.

I attach first the piece of log with me sending a message (second line is "foo: bar baz"), and then a piece of log with me receiving the same thing (mangled), and then a piece of me receiving it again from a correspondent with Miranda (non-mangled). I inserted Wiki line breaks where they occur in the message text.

It seems Pidgin always sends two bodies in the message, regular and HTML. On the sending side, the two bodies seem equivalent. On the receiving side, the HTML body is mangled.

The reason it works with Miranda seems to be that Miranda only sends one body - non HTML!

So, is our Jabber server mangling HTML bodies?

Sending (with Pidgin, looks good so far - but arrives mangled):

(11:00:53) jabber: Sending (ssl): <iq type='get' id='purple2e6a4a04'><ping xmlns='urn:xmpp:ping'/></iq>

(11:00:53) jabber: Recv (ssl)(203): <iq type="error" id="purple2e6a4a04" to="frank@127.0.0.1/Work"><ping xmlns="urn:xmpp:ping"/><error code="503" type="cancel"><service-unavailable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>

(11:00:54) jabber: Sending (ssl): <message type='chat' id='purple2e6a4a05' to='jchatham@127.0.0.1'><x xmlns='jabber:x:event'><composing/></x><composing xmlns='http://jabber.org/protocol/chatstates'/></message>

(11:01:05) jabber: Sending (ssl): <message type='chat' id='purple2e6a4a06' to='jchatham@127.0.0.1'><x xmlns='jabber:x:event'><composing/></x><active xmlns='http://jabber.org/protocol/chatstates'/><body>test
foo: bar baz</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'>test<br/>foo: bar baz</body></html></message>

(11:01:05) jabber: Sending (ssl): <message type='chat' id='purple2e6a4a07' to='jchatham@127.0.0.1'><x xmlns='jabber:x:event'/><active xmlns='http://jabber.org/protocol/chatstates'/></message>

Receiving (from Gaim, mangled):

(11:06:11) jabber: Recv (ssl)(320): <message type="chat" id="purpleeccc12e8" to="frank@127.0.0.1/Work" from="jchatham@127.0.0.1/Gaim"><active xmlns="http://jabber.org/protocol/chatstates"/><body>Line one
foo: bar baz</body><html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml">Line one<br/>baz</body></html></message>

(11:06:11) jabber: Recv (ssl)(163): <message type="chat" id="purpleeccc12e9" to="frank@127.0.0.1/Work" from="jchatham@127.0.0.1/Gaim"><active xmlns="http://jabber.org/protocol/chatstates"/></message>

Receiving (from Miranda, intact):

(11:28:55) jabber: Recv (ssl)(151): <message type="chat" to="frank@127.0.0.1/Work" id="mir_1055" from="olga@127.0.0.1/Miranda"><body>foo:bar baz
foo\ bar baz
foo bar:baz </body></message>

comment:4 Changed 11 years ago by deryni

  • pending changed from 0 to 1

If you are indeed seeing

<body>test
foo: bar baz</body><html xmlns='http://jabber.org/protocol/xhtml-im'><body xmlns='http://www.w3.org/1999/xhtml'>test<br/>foo: bar baz</body>

being sent out by pidgin and

<body>Line one
foo: bar baz</body><html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml">Line one<br/>baz</body>

being received for that same message (I'm assuming the Line one/test difference isn't actually in the message but a copy/paste/anonymize/multiple-attempt artifact) then yes your server is mangling the message somehow.

Why it would be doing that I have no idea, perhaps some sort of spam protection gone haywire or something.

You will need to talk to the server admins or look at the server configuration to figure out what is going on here exactly.

comment:5 Changed 11 years ago by trac-robot

  • pending changed from 1 to 0
  • Status changed from new to closed

This ticket was closed automatically by the system. It was previously set to a Pending status and hasn't been updated within 14 days.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!