Appended two patches from Alessandro Pignotti originally posted on the
Ubuntu Bugzilla. They may or may not still be valid.

According to Alessandro's words, "They should be considered hacks to
make the problem more clear."

Trying to attract some attention to this bug because I face it on a
regular basis playing Lord of the Rings Online on Wine still after 5
years a patch has been proposed.

I'm a bit experienced in programming but only in Pascal and Python so
I'm trying to find someone more experienced who could possibly fix it.
If nobody responds, maybe I'll try to fix it myself…

You received this bug notification because you are a member of Desktop
Packages, which is subscribed to libx11 in Ubuntu.

  Thread unsafe access to internal linked list, breaks Origin games in

Status in xlibs:
Status in libx11 package in Ubuntu:

Bug description:
  In file src/xlibi18n/lcConv.c the following linked list head is

  static XlcConverterList conv_list = NULL;

  Which is then modified by _XlcSetConverter and get_converter in a non
  thread-safe manner. Inside get_converter the list is reorderder to
  increase the efficiency of looking up the same element the next time,
  but this is especially dangerous since a seemingly read-only method is
  actually modifying the data.

  Modifying the list in such thread unsafe manner does case the list to
  become garbled in some workloads and causes infinite loops when the
  get_converter is invoked. The solution I suggest is to add a mutex or
  spinlock around accesses to the linked list, I would it myself but I'm
  not sure about what is the usual mutex implementation for this

To manage notifications about this bug go to:

Mailing list:
Post to     :
Unsubscribe :
More help   :

Reply via email to