albertlauncher / albert

A fast and flexible keyboard launcher
https://albertlauncher.github.io
Other
7.28k stars 305 forks source link

libmuparser update #107

Closed PatrickE94 closed 8 years ago

PatrickE94 commented 8 years ago

A recent package update on Arch caused albert to segfault with the following backtrace.

libmuparser upgraded from 2.2.4-1 -> 2.2.5-2 Albert from GIT master branch.

Starting program: /home/patrick/dev/albert/bin/albert 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7fffeb01b700 (LWP 7051)]
[PluginManager] Loading plugins.
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.websearch"
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.system"
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.chromebookmarks"
[New Thread 0x7fffe02dd700 (LWP 7052)]
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.template"
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.files"
[Pluginloader] Plugin loaded: "org.manuelschneid3r.albert.extension.calculator"

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff55c8fb3 in _int_malloc () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff55c8fb3 in _int_malloc () from /usr/lib/libc.so.6
#1  0x00007ffff55ca3d4 in malloc () from /usr/lib/libc.so.6
#2  0x00007ffff5e950e8 in operator new (sz=96) at /build/gcc-multilib/src/gcc-5.3.0/libstdc++-v3/libsupc++/new_op.cc:50
#3  0x00007fffdf160144 in mu::ParserBase::AddCallback(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, mu::ParserCallback const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, mu::ParserCallback, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, mu::ParserCallback> > >&, char const*) () from /usr/lib/libmuparser.so.2
#4  0x00007fffdf1571d1 in mu::Parser::InitFun() () from /usr/lib/libmuparser.so.2
#5  0x00007fffdf157a8b in mu::Parser::Parser() () from /usr/lib/libmuparser.so.2
#6  0x00007fffdf39fdd4 in Calculator::Extension::Extension() () from /usr/share/albert/plugins/libcalculator.so
#7  0x00007fffdf3a0c1f in qt_plugin_instance () from /usr/share/albert/plugins/libcalculator.so
#8  0x00007ffff640f27f in QPluginLoader::instance() () from /usr/lib/libQt5Core.so.5
#9  0x0000000000453974 in PluginSpec::instance (this=0x1b75430) at /home/patrick/dev/albert/src/application/pluginsystem/pluginloader.cpp:36
#10 0x000000000045536b in PluginManager::loadPlugin (this=0x776c20, plugin=std::unique_ptr<PluginSpec> containing 0x1b75430)
    at /home/patrick/dev/albert/src/application/pluginsystem/pluginmanager.cpp:99
#11 0x0000000000454d35 in PluginManager::PluginManager (this=0x776c20) at /home/patrick/dev/albert/src/application/pluginsystem/pluginmanager.cpp:61
#12 0x0000000000446d9d in AlbertApp::AlbertApp (this=0x7fffffffe5c0, argc=@0x7fffffffe5bc: 1, argv=0x7fffffffe6f8)
    at /home/patrick/dev/albert/src/application/albertapp.cpp:78
#13 0x000000000044646d in main (argc=1, argv=0x7fffffffe6f8) at /home/patrick/dev/albert/src/application/main.cpp:20
PatrickE94 commented 8 years ago

Downgrading to 2.2.5-1 seems to fix the issue.

TheMuspilli commented 8 years ago

I can confirm the problem and the workaround of downgrading to muparser 2.2.5-1.

albert 0.80 git version from the AUR manjaro 15.12.rc2, xfce4

felixonmars commented 8 years ago

The -2 revision was just a rebuilt against new libstdc++ ABI. Please report to muparser upstream since it shouldn't have anything to do with packaging...

PatrickE94 commented 8 years ago

I've been playing around with some compilation and got it to work with simply rebuilding the latest packages with albert as the last reinstallation. So all in all, recompiling albert with the latest packages in AUR fixes the issue. @felixonmars is right, but I don't believe it's muparser fault since recompilation does the trick.

Closing the issues now as it seems to be resolved. Merry Christmas everyone!

ManuelSchneid3r commented 8 years ago

Maybe some (pretty frequent) Archlinux ABI quirks ...