Public bug reported: Code example: http://paste.ubuntu.com/24133139/
Fails on the 2nd load due to an issue of libprotobuf-lite not being unloaded. Meaning the static variables aren't being re-inited. Protobuf uses a static variable for an empty string optimization which ends up becoming a dangling pointer: back trace: http://paste.ubuntu.com/24133152/ valgrind: http://paste.ubuntu.com/24133156/ The workaround/fix that we saw was to re-set that static variable which will let the empty string be init'd correctly. ** Affects: mir Importance: High Assignee: Brandon Schaefer (brandontschaefer) Status: In Progress ** Affects: mir (Ubuntu) Importance: High Assignee: Brandon Schaefer (brandontschaefer) Status: In Progress ** Changed in: mir Status: New => In Progress ** Changed in: mir Importance: Undecided => High ** Changed in: mir Assignee: (unassigned) => Brandon Schaefer (brandontschaefer) ** Also affects: mir (Ubuntu) Importance: Undecided Status: New ** Changed in: mir Milestone: None => 1.0.0 ** Changed in: mir Milestone: 1.0.0 => 0.26.2 ** Changed in: mir (Ubuntu) Status: New => In Progress ** Changed in: mir (Ubuntu) Importance: Undecided => High ** Changed in: mir (Ubuntu) Assignee: (unassigned) => Brandon Schaefer (brandontschaefer) ** Summary changed: - Mirclient cannot be reloaded through dlopen + libmirclient cannot be reloaded through dlopen -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to mir in Ubuntu. https://bugs.launchpad.net/bugs/1670844 Title: libmirclient cannot be reloaded through dlopen Status in Mir: In Progress Status in mir package in Ubuntu: In Progress Bug description: Code example: http://paste.ubuntu.com/24133139/ Fails on the 2nd load due to an issue of libprotobuf-lite not being unloaded. Meaning the static variables aren't being re-inited. Protobuf uses a static variable for an empty string optimization which ends up becoming a dangling pointer: back trace: http://paste.ubuntu.com/24133152/ valgrind: http://paste.ubuntu.com/24133156/ The workaround/fix that we saw was to re-set that static variable which will let the empty string be init'd correctly. To manage notifications about this bug go to: https://bugs.launchpad.net/mir/+bug/1670844/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp