URL:
  <http://gna.org/bugs/?18627>

                 Summary: Game aborts probably due to new token stuff
                 Project: Battle for Wesnoth
            Submitted by: espreon
            Submitted on: Sat 10 Sep 2011 01:50:11 AM GMT
                Category: Bug
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group:  None of the others
                  Status: None
                 Privacy: Public
             Assigned to: thonsew
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 1.9.9+svn (51109)
        Operating System: Sabayon Linux

    _______________________________________________________

Details:

While trying out something for my multifloor system (which turned out to be a
flawed concept), I discovered this bug. When the event with this new stuff
triggered, the game aborted.

Error:

20110909 21:41:56 error engine: variable_info: first character of identifier
at 7 is ']' a separator is floors[].map
wesnoth: /home/espreon/wesnoth/src/variable.cpp:616:
<unnamed>::t_parsed_tokens<unnamed>::t_parse_token::operator()(const
config::t_token&) const: Assertion `false' failed.


Backtrace:

Program received signal SIGABRT, Aborted.
0x00007ffff3778735 in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x00007ffff3778735 in raise () from /lib64/libc.so.6
#1  0x00007ffff3779bb6 in abort () from /lib64/libc.so.6
#2  0x00007ffff3771355 in __assert_fail () from /lib64/libc.so.6
#3  0x000000000175b182 in (anonymous namespace)::t_parse_token::operator()
(this=0x22f2368, key=...) at /home/espreon/wesnoth/src/variable.cpp:616
#4  0x000000000175d6db in n_lru_cache::t_lru_cache<n_token::t_token,
std::vector<<unnamed>::t_parsed, std::allocator<<unnamed>::t_parsed> >,
<unnamed>::t_parse_token>::check<<unnamed>::t_parse_token>(const
n_lru_cache::t_lru_cache<n_token::t_token, std::vector<<unnamed>::t_parsed,
std::allocator<<unnamed>::t_parsed> >, <unnamed>::t_parse_token>::t_key &,
(anonymous namespace)::t_parse_token &) (this=0x22f2320, k=..., lcomp=...) at
/home/espreon/wesnoth/src/utils/lru_cache.hpp:114
#5  0x000000000175cb9d in n_lru_cache::t_lru_cache<n_token::t_token,
std::vector<<unnamed>::t_parsed, std::allocator<<unnamed>::t_parsed> >,
<unnamed>::t_parse_token>::check(const
n_lru_cache::t_lru_cache<n_token::t_token, std::vector<<unnamed>::t_parsed,
std::allocator<<unnamed>::t_parsed> >, <unnamed>::t_parse_token>::t_key &)
(this=0x22f2320, k=...)
    at /home/espreon/wesnoth/src/utils/lru_cache.hpp:91
#6  0x000000000175b90d in variable_info::init (this=0x7fffffff6b10,
varname=..., force_valid=false) at /home/espreon/wesnoth/src/variable.cpp:713
#7  0x000000000175c37c in variable_info::variable_info (this=0x7fffffff6b10,
varname=..., force_valid=false, validation_type=variable_info::TYPE_SCALAR)
    at /home/espreon/wesnoth/src/variable.cpp:834
#8  0x000000000132de1e in game_state::get_variable_const (this=0x233b8e8,
key=...) at /home/espreon/wesnoth/src/gamestatus.cpp:582
#9  0x00000000012a34b4 in wml_interpolation::t_operation_interp::operator()
(this=0x7fffe257d300, stack=std::vector of length 1, capacity 2 = {...},
variable_set=...)
    at /home/espreon/wesnoth/src/formula_string_utils_backend.hpp:300
#10 0x000000000129f7b0 in wml_interpolation::t_instructions::run_core
(this=0x7fffd9278dd8, x=..., set=...) at
/home/espreon/wesnoth/src/formula_string_utils_backend.cpp:240
#11 0x000000000129999b in wml_interpolation::t_instructions::run
(this=0x7fffd9278dd8, x=..., set=...) at
/home/espreon/wesnoth/src/formula_string_utils_backend.hpp:354
#12 0x0000000001299bf2 in
wml_interpolation::t_parse_and_interpolator::interpolate (this=0x7fffffff6d40,
set=...) at /home/espreon/wesnoth/src/formula_string_utils_backend.hpp:453
#13 0x0000000001299b59 in
wml_interpolation::t_parse_and_interpolator::parse_and_interpolate
(this=0x7fffffff6d40, set=...) at
/home/espreon/wesnoth/src/formula_string_utils_backend.hpp:441
#14 0x00000000012993c1 in utils::interpolate_variables_into_token (token=...,
variables=...) at /home/espreon/wesnoth/src/formula_string_utils.cpp:63
#15 0x0000000001761fb5 in vconfig_expand_visitor::operator()
(this=0x7fffffff6e20, token=...) at
/home/espreon/wesnoth/src/variable.cpp:385
#16 0x0000000001762b9d in
config::attribute_value::apply_visitor<vconfig_expand_visitor>
(this=0x7fffffff7320, visitor=...) at
/home/espreon/wesnoth/src/config.hpp:605
#17 0x0000000001759548 in vconfig::expand (this=0x7fffffff7650, key=...) at
/home/espreon/wesnoth/src/variable.cpp:397
#18 0x00000000012fb3de in vconfig::operator[] (this=0x7fffffff7650, key=...)
at /home/espreon/wesnoth/src/variable.hpp:84
#19 0x00000000012e287d in wml_func_set_variable (cfg=...) at
/home/espreon/wesnoth/src/game_events.cpp:1414
#20 0x0000000001665ec5 in cfun_wml_action (L=0x7fffe2901530) at
/home/espreon/wesnoth/src/scripting/lua.cpp:3845
#21 0x0000000001849943 in luaD_precall (L=0x7fffe2901530,
func=0x7fffd8ccefd0, nresults=0) at /home/espreon/wesnoth/src/lua/ldo.c:323
#22 0x0000000001857986 in luaV_execute (L=0x7fffe2901530, nexeccalls=1) at
/home/espreon/wesnoth/src/lua/lvm.c:590
#23 0x0000000001849c15 in luaD_call (L=0x7fffe2901530, func=0x7fffd8ccef20,
nResults=0) at /home/espreon/wesnoth/src/lua/ldo.c:381
#24 0x0000000001846160 in f_call (L=0x7fffe2901530, ud=0x7fffffff7c40) at
/home/espreon/wesnoth/src/lua/lapi.c:800
#25 0x0000000001848ac4 in luaD_rawrunprotected (L=0x7fffe2901530, f=0x184612b
<f_call(lua_State*, void*)>, ud=0x7fffffff7c40) at
/home/espreon/wesnoth/src/lua/ldo.c:120
#26 0x000000000184a023 in luaD_pcall (L=0x7fffe2901530, func=0x184612b
<f_call(lua_State*, void*)>, u=0x7fffffff7c40, old_top=32, ef=16) at
/home/espreon/wesnoth/src/lua/ldo.c:467
#27 0x0000000001846209 in lua_pcall (L=0x7fffe2901530, nargs=1, nresults=0,
errfunc=-3) at /home/espreon/wesnoth/src/lua/lapi.c:821
#28 0x0000000001654d4b in luaW_pcall (L=0x7fffe2901530, nArgs=1, nRets=0,
allow_wml_error=true) at /home/espreon/wesnoth/src/scripting/lua.cpp:450
#29 0x0000000001666062 in LuaKernel::run_wml_action (this=0x7fffe2921ed0,
cmd="command", cfg=..., ev=...) at
/home/espreon/wesnoth/src/scripting/lua.cpp:3883
#30 0x00000000012eff93 in game_events::handle_event_commands (event_info=...,
cfg=...) at /home/espreon/wesnoth/src/game_events.cpp:3256
#31 0x00000000012eff2c in game_events::event_handler::handle_event
(this=0x7fffe297ca10, event_info=...) at
/home/espreon/wesnoth/src/game_events.cpp:3251
#32 0x00000000012efa9c in process_event (handler=..., ev=...) at
/home/espreon/wesnoth/src/game_events.cpp:3215
#33 0x00000000012f2138 in game_events::pump () at
/home/espreon/wesnoth/src/game_events.cpp:3558
#34 0x0000000001008798 in move_unit (move_spectator=0x0, route=std::vector of
length 3, capacity 3 = {...}, move_recorder=0x22ed440,
undo_stack=0x7fffffffb6a8, show_move=true, 
    next_unit=0x7fffffffb2e0, continue_move=false, should_clear_shroud=true,
is_replay=false, units_sighted_result=0x0) at
/home/espreon/wesnoth/src/actions.cpp:2738
#35 0x0000000001584b66 in events::mouse_handler::move_unit_along_route
(this=0x7fffffffb270, route=..., next_unit=0x7fffffffb2e0, check_shroud=true,
sighted_result=0x0)
    at /home/espreon/wesnoth/src/mouse_events.cpp:683
#36 0x0000000001584727 in
events::mouse_handler::move_unit_along_current_route (this=0x7fffffffb270,
check_shroud=true) at /home/espreon/wesnoth/src/mouse_events.cpp:645
#37 0x0000000001583cd9 in events::mouse_handler::left_click
(this=0x7fffffffb270, x=700, y=116, browse=false) at
/home/espreon/wesnoth/src/mouse_events.cpp:569
#38 0x000000000158c2f8 in events::mouse_handler_base::mouse_press
(this=0x7fffffffb270, event=..., browse=false) at
/home/espreon/wesnoth/src/mouse_handler_base.cpp:143
#39 0x0000000001582f8a in events::mouse_handler::mouse_press
(this=0x7fffffffb270, event=..., browse=false) at
/home/espreon/wesnoth/src/mouse_events.cpp:404
#40 0x000000000120ffcc in controller_base::handle_event (this=0x7fffffffb1b0,
event=...) at /home/espreon/wesnoth/src/controller_base.cpp:91
#41 0x00000000018a99e6 in events::pump () at
/home/espreon/wesnoth/src/events.cpp:380
---Type <return> to continue, or q <return> to quit---
#42 0x00000000012107d4 in controller_base::play_slice (this=0x7fffffffb1b0,
is_delay_enabled=true) at /home/espreon/wesnoth/src/controller_base.cpp:197
#43 0x000000000162d769 in playsingle_controller::play_human_turn
(this=0x7fffffffb1b0) at
/home/espreon/wesnoth/src/playsingle_controller.cpp:720
#44 0x000000000162d034 in playsingle_controller::play_side
(this=0x7fffffffb1b0, team_index=1, save=true) at
/home/espreon/wesnoth/src/playsingle_controller.cpp:645
#45 0x000000000162cc64 in playsingle_controller::play_turn
(this=0x7fffffffb1b0, save=true) at
/home/espreon/wesnoth/src/playsingle_controller.cpp:599
#46 0x000000000162b51e in playsingle_controller::play_scenario
(this=0x7fffffffb1b0, story=..., skip_replay=false) at
/home/espreon/wesnoth/src/playsingle_controller.cpp:400
#47 0x000000000161dfce in playsingle_scenario (game_config=...,
level=0x7fffffffbd50, disp=..., state_of_game=..., story=...,
skip_replay=false, end_level=...)
    at /home/espreon/wesnoth/src/playcampaign.cpp:130
#48 0x0000000001620522 in play_game (disp=..., gamestate=...,
game_config=..., io_type=IO_NONE, skip_replay=false) at
/home/espreon/wesnoth/src/playcampaign.cpp:365
#49 0x00000000012b74cc in game_controller::launch_game (this=0x233b7b0,
reload=game_controller_abstract::RELOAD_DATA) at
/home/espreon/wesnoth/src/game_controller.cpp:1264
#50 0x0000000000fd54c1 in do_gameloop (argc=1, argv=0x7fffffffdc08) at
/home/espreon/wesnoth/src/game.cpp:567
#51 0x0000000000fd5a02 in main (argc=1, argv=0x7fffffffdc08) at
/home/espreon/wesnoth/src/game.cpp:621
(gdb

svn:
https://wesnoth-umc-dev.svn.sourceforge.net/svnroot/wesnoth-umc-dev/trunk/The_Silver_Lands/

Tarball:
http://wesnoth-umc-dev.svn.sourceforge.net/viewvc/wesnoth-umc-dev/trunk/The_Silver_Lands/?view=tar

Before beginning, make a file called 'tsl-debug' in the root of the
campaign.

Steps to reproduce:

1. Start the campaign (The Silver Lands Debug Mode)

2. Move a unit to 12,1

3. Behold




    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?18627>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Wesnoth-bugs mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-bugs

Reply via email to