After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 756857 - Initial message not visible when conversation logs contain an escape character
Initial message not visible when conversation logs contain an escape character
Status: RESOLVED OBSOLETE
Product: empathy
Classification: Core
Component: General
3.8.x
Other Linux
: Normal normal
: ---
Assigned To: empathy-maint
empathy-maint
Depends on:
Blocks:
 
 
Reported: 2015-10-20 11:17 UTC by IT man
Modified: 2018-05-22 19:04 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description IT man 2015-10-20 11:17:15 UTC
*** Issue

When user X has a message containing en escape character in her/his Empathy conversation logs, the following error happens:

When user Y sends a chat message to Empathy user X, user X cannot open the message window.
User X must open the message history or select Y in the contact list to be able to see the message.


*** Tested versions

Ubuntu 14.04.1 LTS 64-bit with all package updates (advertised as 14.04.3).
Empathy 3.8.6 (package shipped with Ubuntu)


*** Steps to reproduce

- User X has Empathy configured on an XMPP (Jabber) server.

- Produce a dummy XML conversation log file (say 20150619.log) which contains an Escape character (ASCII 27).
Note: the Escape character is encoded as:


In our case, this character was produced by copy-pasting text which included escape sequences into a conversation.

- On user X's machine, copy dummy log file 20150619.log to X's Empathy conversation log tree under ~/.local/share/TpLogger/logs , in the subdirectory which stores conversations with Y (the directory is named "Y@<Jabber server FQDN>").

- In this same directory, remove the current day's log file.

- Have Y send a message to X.

On X's computer, a blue envelope icon shows in the notification area (top right of the screen).

- X clicks on the blue envelope.
This opens a menu.

- In this menu, under "Empathy", X clicks on Y's name.


*** Expected result

A window opens with Y's message plus any earlier messages.


*** Actual result

Nothing happens. No window opens.
In other cases, the window opens with any earlier messages from Y, but not the message just sent.


*** Tested workarounds

1. Immediate workaround

The missing message can be found by looking at the conversation log in Empathy or by clicking on Y's name in the contact list.


2. Long-term workaround

By using "xmllint" on the whole ~/.local/share/TpLogger/logs directory tree, the file(s) in error can be found.
Then they can be either removed or fixed with "xmllint -recover". The latter method invoves the use of a temporary file because the command does not work in place.

As soon as another message with an incorrect character is received, however, the workaround must be performed again.


*** Impact and comments

Inexperienced users having this defect may miss (potentially many) chat messages.
This is to be balanced with the frequency of the error, i.e. the frequency of its trigger.
It is quite possible that the error is not limited to the escape character but present with any syntax error in the XML conversation logs.
Also, the error is probably not limited to XMPP servers either.

This bug is also open downstream in Ubuntu with number 1506834.
Comment 1 GNOME Infrastructure Team 2018-05-22 19:04:38 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/empathy/issues/849.