After trying to come up with a fallback for wrong locale I've to say this cannot be fixed at the point we hit the problem in unity-scopes- shell. It's already too late, and moreover there seem to be issues with the libstdc++ library when locale setup is broken and it's impossible to recover.
Related to this: http://stackoverflow.com/questions/1745045/stdlocale-breakage-on-macos-10-6-with-lang-en-us-utf-8 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15467 When the locale setup is broken (which I can easily reproduce in my VM with only minimal ubuntu system with some locale settings pointing to non-existing PL locales, and LC_ALL is unset), all the locale-related C++ functions throw when trying to get current locale name and they also throw after trying to set LC_ALL to "C" at this point. In summary, these method calls throw: std::locale("") (should get us current locale setup) std::setlocale(LC_ALL, "C") std::locale::global(std::locale::classic()) The only workaround I can think of is to avoid the crash, end up with a blank Dash page and log an error message to unity8-dash.log. For the occasional problem with the tests we see when landing the package, I'll make sure LC_ALL=C when tests are executed. ** Bug watch added: GCC Bugzilla #15467 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15467 ** Bug watch added: GCC Bugzilla #70493 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70493 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1363946 Title: unity8-dash crashed with SIGABRT in qt_message_fatal() under incorrect locale To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/unity-scopes-api/+bug/1363946/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs