I tried to compile wesnoth 1.11.1 from source using make on Linux Ubuntu 12.10, everything went fine, but when I tried to load it, it crashed while loading to the main screen. I reinstalled it, but without success. I deleted all configuration files, but without success. This is the terminal output. 1.11.0 installed in the same way worked without problems.
20121209 17:58:57 error filesystem: Could not open '/home/dugi/.config/wesnoth/preferences' for reading.
Data directory: /usr/local/share/wesnoth User configuration directory: /home/dugi/.config/wesnoth User data directory: /home/dugi/.local/share/wesnoth/1.11 Cache directory: /home/dugi/.cache/wesnoth Checking video mode: 1024x768x32... setting mode to 1024x768x32 Segmentation fault (core dumped)
The filesystem error that it could not find preferences was created when I removed the preferences supposing that it might cause the problem, it crashed also if the file was there.
Last edited by Dugi on December 12th, 2012, 8:54 pm, edited 1 time in total.
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
Firstly, I'd try deleting the whole configuration and cache directories, you see these paths in the terminal output which you posted. Secondly, to troubleshoot this, whether it's a bug or somehow related to the OS, you should get a backtrace as precisely described here: viewtopic.php?f=4&t=16163
EDIT Actually, before the backtrace, you can also start wesnoth with passing the command line parameter --log-debug=all and post the output.
It was extremely long and there was no way to copy it all, I hope the last lines will help you to tell where it happened and what might have been the cause.
20121209 21:17:08 debug filesystem: Looking for 'advanced_preferences.cfg'. 20121209 21:17:08 debug filesystem: trying '/usr/local/share/wesnoth/data/advanced_preferences.cfg' 20121209 21:17:08 debug filesystem: found: '/usr/local/share/wesnoth/data/advanced_preferences.cfg' 20121209 21:17:08 info filesystem: Streaming /usr/local/share/wesnoth/data/advanced_preferences.cfg for reading. 20121209 21:17:08 debug config: testing for macro __UNUSED__: not defined 20121209 21:17:08 info config: Macro definition not found for game_config.cfg , attempting to open as file. 20121209 21:17:08 debug filesystem: Looking for 'game_config.cfg'. 20121209 21:17:08 debug filesystem: trying '/usr/local/share/wesnoth/data/game_config.cfg' 20121209 21:17:08 debug filesystem: found: '/usr/local/share/wesnoth/data/game_config.cfg' 20121209 21:17:08 info filesystem: Streaming /usr/local/share/wesnoth/data/game_config.cfg for reading. 20121209 21:17:08 info config: Macro definition not found for core/team-colors.cfg , attempting to open as file. 20121209 21:17:08 debug filesystem: Looking for 'core/team-colors.cfg'. 20121209 21:17:08 debug filesystem: trying '/usr/local/share/wesnoth/data/core/team-colors.cfg' 20121209 21:17:08 debug filesystem: found: '/usr/local/share/wesnoth/data/core/team-colors.cfg' 20121209 21:17:08 info filesystem: Streaming /usr/local/share/wesnoth/data/core/team-colors.cfg for reading. 20121209 21:17:08 debug config: testing for macro TUTORIAL: not defined 20121209 21:17:08 info filesystem: streaming /home/dugi/.cache/wesnoth/cache-v1.11.1-d300d12b655e8545928eb51ab07f7acfe6a6b406.gz for writing. Segmentation fault (core dumped)
And I have removed all the paths mentioned there, but it didn't help, and it created new ones after that. Deleting the cache on the last line above the segmentation fault didn't help neither (not even the whole folder). I'll do the other troubleshooting thing soon, as the log above does not seem to carry much information.
gdb does nothing, wrote a few lines that looked like starting something, but then after 10 minutes, nothing new appeared there.
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
Hm well, report it at gna I'd say, so that it doesn't get lost: http://gna.org/bugs/?group=wesnoth Include a link to this and that it didn't yet happen in 1.11.0. Getting gdb to print something useful would be good. Make sure to use a debug build.
Program received signal SIGSEGV, Segmentation fault. 0x092a5be4 in (anonymous namespace)::escaped_string(__gnu_cxx::__normal_iterator<char const*, std::string> const&, __gnu_cxx::__normal_iterator<char const*, std::string> const&) ()
I'll post about it there.
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
If you enter the command 'bt', gdb will print a backtrace. While this line shows that the crash happens in the parser, it doesn't show us how we got there.
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
That is a very short backtrace (it should go at least until #10 I suppose); are you sure you copied it all ? So, did you forget to type bt in the first place (and AI was right about reminding you), or does gdb actually behave very weird (slow ?). Perhaps copy the complete shell output. Usually you get back to the gdb prompt where you entered the bt command after it has printed the trace, doesn't that happen ? (Then something seriously is wrong.)
gdb didn't behave very slow, I had to start the process with the run command and I forgot about it. And the backtrace also wasn't entire, I just thought that overly long logs are useless. Here is the entire terminal output (bt ended after 23 steps).
Spoiler:
dugi@dugi:~$ gdb wesnoth GNU gdb (GDB) 7.5-ubuntu Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/local/bin/wesnoth...(no debugging symbols found)...done. (gdb) run Starting program: /usr/local/bin/wesnoth [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [New Thread 0xb561bb40 (LWP 28367)] Battle for Wesnoth v1.11.1 Started on Mon Dec 10 19:00:55 2012
Data directory: /usr/local/share/wesnoth User configuration directory: /home/dugi/.config/wesnoth User data directory: /home/dugi/.local/share/wesnoth/1.11 Cache directory: /home/dugi/.cache/wesnoth Checking video mode: 1366x717x32... setting mode to 1366x717x32
Program received signal SIGSEGV, Segmentation fault. 0x092a5be4 in (anonymous namespace)::escaped_string(__gnu_cxx::__normal_iterator<char const*, std::string> const&, __gnu_cxx::__normal_iterator<char const*, std::string> const&) () (gdb) c Continuing. [Thread 0xb561bb40 (LWP 28367) exited]
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
Yes, but in one line gdb says "no debugging symbols found" which very likely means you used a release build as opposed to a debug one. (And indeed there is info missing from the trace.) Also, you don't need to install wesnoth to run it. The executable will be in the root of your source tree from where you should run it. (Actually, I never installed it, and I don't know whether it would work with a debug build.)
cmake . make -DCMAKE_BUILD_TYPE=Debug sudo make install
But it does not seem to want to take that argument. Am I doing something wrongly?
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
To force a reconfiguration, delete the file CMakeCache.txt. Not sure whether it has that name since I've also used cmake on windows, and on Linux I usually only generate a project file with cmake. No need for install, all in the source tree root folder.
dugi@dugi:~/wesnoth-1.11.1$ gdb wesnoth GNU gdb (GDB) 7.5-ubuntu Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /home/dugi/wesnoth-1.11.1/wesnoth...done. (gdb) run Starting program: /home/dugi/wesnoth-1.11.1/wesnoth [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [New Thread 0xb561bb40 (LWP 21913)] Battle for Wesnoth v1.11.1 Started on Tue Dec 11 19:20:05 2012
Automatically found a possible data directory at /home/dugi/wesnoth-1.11.1
Data directory: /home/dugi/wesnoth-1.11.1 User configuration directory: /home/dugi/.config/wesnoth User data directory: /home/dugi/.local/share/wesnoth/1.11 Cache directory: /home/dugi/.cache/wesnoth Checking video mode: 1366x717x32... setting mode to 1366x717x32
Program received signal SIGSEGV, Segmentation fault. 0x092a5be4 in (anonymous namespace)::escaped_string (begin=..., end=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:429 429 const char c = *iter; (gdb) bt #0 0x092a5be4 in (anonymous namespace)::escaped_string (begin=..., end=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:429 #1 0x092a5ff9 in (anonymous namespace)::write_key_val_visitor::operator() (this=0xbfffe700, value=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:504 #2 0x092a8700 in boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>::internal_visit<t_string const>(const t_string &, int) (this=0xbfffe69c, operand=...) at /usr/include/boost/variant/variant.hpp:832 #3 0x092a85d5 in boost::detail::variant::visitation_impl_invoke_impl<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, t_string>(int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, t_string *, mpl_::true_) (visitor=..., storage=0x9b48840) at /usr/include/boost/variant/detail/visitation_impl.hpp:130 #4 0x092a8364 in boost::detail::variant::visitation_impl_invoke<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, t_string, boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string>::has_fallback_type_>(int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, t_string *, boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::has_fallback_type_, int) (internal_which=4, visitor=..., storage=0x9b48840, t=0x0) at /usr/include/boost/variant/detail/visitation_impl.hpp:173 #5 0x092a7ce9 in boost::detail::variant::visitation_impl<mpl_::int_<0>, boost::detail::variant::visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<5l>, boost::blank, boost::mpl::l_item<mpl_::long_<4l>, bool, boost::mpl::l_item<mpl_::long_<3l>, double, boost::mpl::l_item<mpl_::long_<2l>, std::basic_string<char>, boost::mpl::l_item<mpl_::long_<1l>, t_string, boost::mpl::l_end> > > > > >, boost::mpl::l_iter<boost::mpl::l_end> >, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string>::has_fallback_type_>(int, int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, mpl_::false_, boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::has_fallback_type_, mpl_::int_<0> *, boost::detail::variant::visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<5l>, boost::blank, boost::mpl::l_item<mpl_::long_<4l>, bool, boost::mpl::l_item<mpl_::long_<3l>, double, boost::mpl::l_item<mpl_::long_<2l>, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::mpl::l_item<mpl_::long_<1l>, t_string, boost::mpl::l_end> > > > > >, boost::mpl::l_iter<boost::mpl::l_end> > *) (internal_which=4, logical_which=4, visitor=..., storage=0x9b48840, no_backup_flag=...) at /usr/include/boost/variant/detail/visitation_impl.hpp:260 #6 0x092a7835 in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::internal_apply_visitor_impl<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*>(int, int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *) (internal_which=4, logical_which=4, visitor=..., storage=0x9b48840) at /usr/include/boost/variant/variant.hpp:1776 #7 0x092a746c in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::internal_apply_visitor<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> >(boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &) const (this=0x9b4883c, visitor=...) at /usr/include/boost/variant/variant.hpp:1798 #8 0x092a6d30 in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::apply_visitor<const {anonymous}::write_key_val_visitor>(const (anonymous namespace)::write_key_val_visitor &) const (this=0x9b4883c, visitor=...) at /usr/include/boost/variant/variant.hpp:1820 #9 0x092a6951 in boost::apply_visitor<{anonymous}::write_key_val_visitor, const boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string> >(const (anonymous namespace)::write_key_val_visitor &, const boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> &) (visitor=..., visitable=...) at /usr/include/boost/variant/detail/apply_visitor_unary.hpp:76 #10 0x092a617a in write_key_val (out=..., key=..., value=..., level=1, textdomain=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:518 #11 0x092a64c6 in write_internal (cfg=..., out=..., textdomain=..., tab=1) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:538 #12 0x092a6676 in write_internal (cfg=..., out=..., textdomain=..., tab=0) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:544 #13 0x092a67a7 in write (out=..., cfg=..., level=0) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:552 #14 0x092a331f in config_writer::write (this=0xbfffe890, cfg=...) at /home/dugi/wesnoth-1.11.1/src/serialization/binary_or_text.cpp:80 ---Type <return> to continue, or q <return> to quit--- #15 0x08e6d2df in game_config::config_cache::write_file (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:99 #16 0x08e6e0fa in game_config::config_cache::read_cache (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:238 #17 0x08e6ed9a in game_config::config_cache::load_configs (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:285 #18 0x08e6d267 in game_config::config_cache::get_config (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:91 #19 0x08ef7363 in game_controller::load_game_cfg (this=0x9a39378, force=false) at /home/dugi/wesnoth-1.11.1/src/game_controller.cpp:1133 #20 0x08eeecf2 in game_controller::init_config (this=0x9a39378, force=false) at /home/dugi/wesnoth-1.11.1/src/game_controller.cpp:305 #21 0x08ef971d in game_controller::init_config (this=0x9a39378) at /home/dugi/wesnoth-1.11.1/src/game_controller.hpp:52 #22 0x08b0c0b8 in do_gameloop (argc=1, argv=0xbffff364) at /home/dugi/wesnoth-1.11.1/src/game.cpp:477 #23 0x08b0d0e6 in main (argc=1, argv=0xbffff364) at /home/dugi/wesnoth-1.11.1/src/game.cpp:694
Btw, what is the chance that the archive was damaged during downloading and checksums haven't noticed it?
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.
This looks like the same problem nvlbg_ reported in IRC last month. So you can probably sidestep the crash by running 'wesnoth --nocache' instead of just 'wesnoth'. However, sidestepping is not solving. Would you be willing to do some debugging? Otherwise, the problem might persist until a developer can reproduce it.
First, since it might be simplest, is this related to any add-ons? If you move your add-on directory someplace "safe" (effectively deleting it without actually deleting anything), does the crash still occur? If the crashing stops, can you identify which add-on is triggering this crash? (Restore them one at a time until the crash comes back.) The goal of this is to make the crash reproducible, not to blame the add-on.
If that fails (or if you feel like messing with code anyway), take a look at the source file src/serialization/parser.cpp. Line 504 should be
I would be curious as to the last dozen or so lines of this output, as well as confirmation that gdb still reports the segmentation fault as occurring "in (anonymous namespace)::escaped_string".
Next, remove the three lines you added to parser.cpp and change line 504 to
#0 0x092a5be4 in (anonymous namespace)::escaped_string (begin=..., end=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:429 #1 0x092a60a0 in (anonymous namespace)::write_key_val_visitor::operator() (this=0xbfffe700, value=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:508 #2 0x092a87d8 in boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>::internal_visit<t_string const>(const t_string &, int) (this=0xbfffe69c, operand=...) at /usr/include/boost/variant/variant.hpp:832 #3 0x092a86ad in boost::detail::variant::visitation_impl_invoke_impl<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, t_string>(int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, t_string *, mpl_::true_) (visitor=..., storage=0x9b42c40) at /usr/include/boost/variant/detail/visitation_impl.hpp:130 #4 0x092a843c in boost::detail::variant::visitation_impl_invoke<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, t_string, boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string>::has_fallback_type_>(int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, t_string *, boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::has_fallback_type_, int) (internal_which=4, visitor=..., storage=0x9b42c40, t=0x0) at /usr/include/boost/variant/detail/visitation_impl.hpp:173 #5 0x092a7dc1 in boost::detail::variant::visitation_impl<mpl_::int_<0>, boost::detail::variant::visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<5l>, boost::blank, boost::mpl::l_item<mpl_::long_<4l>, bool, boost::mpl::l_item<mpl_::long_<3l>, double, boost::mpl::l_item<mpl_::long_<2l>, std::basic_string<char>, boost::mpl::l_item<mpl_::long_<1l>, t_string, boost::mpl::l_end> > > > > >, boost::mpl::l_iter<boost::mpl::l_end> >, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*, boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string>::has_fallback_type_>(int, int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *, mpl_::false_, boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::has_fallback_type_, mpl_::int_<0> *, boost::detail::variant::visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<5l>, boost::blank, boost::mpl::l_item<mpl_::long_<4l>, bool, boost::mpl::l_item<mpl_::long_<3l>, double, boost::mpl::l_item<mpl_::long_<2l>, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::mpl::l_item<mpl_::long_<1l>, t_string, boost::mpl::l_end> > > > > >, boost::mpl::l_iter<boost::mpl::l_end> > *) (internal_which=4, logical_which=4, visitor=..., storage=0x9b42c40, no_backup_flag=...) at /usr/include/boost/variant/detail/visitation_impl.hpp:260 #6 0x092a790d in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::internal_apply_visitor_impl<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor>, const void*>(int, int, boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &, const void *) (internal_which=4, logical_which=4, visitor=..., storage=0x9b42c40) at /usr/include/boost/variant/variant.hpp:1776 #7 0x092a7544 in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::internal_apply_visitor<boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> >(boost::detail::variant::invoke_visitor<const {anonymous}::write_key_val_visitor> &) const (this=0x9b42c3c, visitor=...) at /usr/include/boost/variant/variant.hpp:1798 #8 0x092a6e08 in boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>::apply_visitor<const {anonymous}::write_key_val_visitor>(const (anonymous namespace)::write_key_val_visitor &) const (this=0x9b42c3c, visitor=...) at /usr/include/boost/variant/variant.hpp:1820 #9 0x092a6a29 in boost::apply_visitor<{anonymous}::write_key_val_visitor, const boost::variant<boost::blank, bool, double, std::basic_string<char>, t_string> >(const (anonymous namespace)::write_key_val_visitor &, const boost::variant<boost::blank, bool, double, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, t_string, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_> &) (visitor=..., visitable=...) at /usr/include/boost/variant/detail/apply_visitor_unary.hpp:76 #10 0x092a6252 in write_key_val (out=..., key=..., value=..., level=1, textdomain=...) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:522 #11 0x092a659e in write_internal (cfg=..., out=..., textdomain=..., tab=1) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:542 #12 0x092a674e in write_internal (cfg=..., out=..., textdomain=..., tab=0) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:548 #13 0x092a687f in write (out=..., cfg=..., level=0) at /home/dugi/wesnoth-1.11.1/src/serialization/parser.cpp:556 #14 0x092a331f in config_writer::write (this=0xbfffe890, cfg=...) at /home/dugi/wesnoth-1.11.1/src/serialization/binary_or_text.cpp:80 ---Type <return> to continue, or q <return> to quit--- #15 0x08e6d2df in game_config::config_cache::write_file (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:99 #16 0x08e6e0fa in game_config::config_cache::read_cache (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:238 #17 0x08e6ed9a in game_config::config_cache::load_configs (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:285 #18 0x08e6d267 in game_config::config_cache::get_config (this=0x9a17e10 <game_config::config_cache::instance()::cache>, path=..., cfg=...) at /home/dugi/wesnoth-1.11.1/src/config_cache.cpp:91 #19 0x08ef7363 in game_controller::load_game_cfg (this=0x9a39378, force=false) at /home/dugi/wesnoth-1.11.1/src/game_controller.cpp:1133 #20 0x08eeecf2 in game_controller::init_config (this=0x9a39378, force=false) at /home/dugi/wesnoth-1.11.1/src/game_controller.cpp:305 #21 0x08ef971d in game_controller::init_config (this=0x9a39378) at /home/dugi/wesnoth-1.11.1/src/game_controller.hpp:52 #22 0x08b0c0b8 in do_gameloop (argc=1, argv=0xbffff364) at /home/dugi/wesnoth-1.11.1/src/game.cpp:477 #23 0x08b0d0e6 in main (argc=1, argv=0xbffff364) at /home/dugi/wesnoth-1.11.1/src/game.cpp:694
The last modification made it work (no crashes and therefore no backtrace available).
Sorry for the time it took, but these processes are quite slow and their usage if disk makes the computer almost useless.
Legend of the Invincibles - single player campaign, 185 scenarios, trying to be an expansion to regular Wesnoth, default units advance past level 3, enemies drop items, lots of new abilities and weapon specials added by advancing or gear, letting the players taste new aspects in gameplay strategy.