apparent mangling of outgoing messages
@ramcq
Submitted by Robert McQueen Assigned to Telepathy bugs list
Description
01:45 < Robot101>
resiak: uh
01:46 < Robot101>
resiak: haze is mangling my outgoing messages, or at least,
mangling how they appear to me
01:46 < Robot101>
method call sender=:1.32 -> dest=:1.26
path=/org/freedesktop/Telepathy/Connection/haze/msn/robot101_40passport_2ecom/ImChannel9; interface=org.freedesktop.Telepathy.Channel.Type.Text; member=Send
uint32 0 string "www.foo.com ftp.bar.com"
01:46 < Robot101>
signal sender=:1.26 -> dest=(null destination)
path=/org/freedesktop/Telepathy/Connection/haze/msn/robot101_40passport_2ecom/ImChannel9; interface=org.freedesktop.Telepathy.Channel.Type.Text; member=Sent
uint32 1200275114 uint32 0 string "www.foo.com ftp.bar.com
(ftp://ftp.bar.com)"
01:46 < Robot101>
the brackety thing's a bit weird isn't it?
01:46 < resiak>
nnnrnghghnh libpurple
01:47 < resiak>
this is a combination libpurple's "html"-to-plaintext function
and its htmlification of the message in the first place
01:47 < Robot101>
it turns ftp.foo.com to ftp.foo.com</a>
to send
01:48 < Robot101>
then when it turns that to text, ftp.foo.com !=
ftp://ftp.foo.com so it puts the link in brackets
01:48 < resiak>
yep
01:48 < Robot101>
because if I'd received <a href="badgers">
snake</a>
, showing
me snake (badgers) is reasonable in plain text
01:48 < Robot101>
shame its not idempotent
01:49 < resiak>
the irritating thing is, MSN doesn't even support links with
text different to their URL
01:49 < resiak>
so actually what's happening is:
01:49 < resiak>
* you ask for "foo.com ftp.bar.com" to be sent
01:49 < resiak>
* it is sent
01:49 < resiak>
* the prpl tells the core it's sent it
01:49 < resiak>
* the core HTMLifies it
01:49 < resiak>
* the core raises the sent signal
01:49 < resiak>
* haze only has the HTMLified version, so has to call
purple_html_to_text (or whatever it's called)
01:50 < Robot101>
haha
01:50 < Robot101>
go team haze
01:50 < Robot101>
er
01:50 < resiak>
file a bug against me so i don't forget
01:50 < Robot101>
purple
01:50 < Robot101>
sent-actually?
01:50 < resiak>
i have to do the sleeping thing
01:51 < resiak>
yeah, or just fix up messages to be passed around libpurple as
(Either PlainText HTML) or some isomorphic datatype :)