韦诺之战
Go to file
Anonymissimus e5289c9d32 refactored when (and when not) buffering of added events is done
(fix for bug #18695 and bug #18737)

The reason for the bug was that buffering was activated and deacticated
at wrong times.

Events added (or removed) during the current event call stack do not
have effect until the base event has run out. The code previously to
adding the [event]id= feature behaved this way and it is now (again)
this way. Although it's still not exactly clear to me *why* this
buffering is done, adding event handlers which were just added during
the current call stack already to the active ones (FR bug #18713)
would require modifying the array of active handlers withint the same
loop where we are iterating over it, which is always a problematic
thing, and this in an area where every mistake quickly results in
fatal WML engine bugs...

This should be subject to further testing with scenarios featuring
complicated event structure envolving custom events, [fire_event]s,
event ids and removing of events.

The reason for me not being able to reproduce with my testcase was
that I didn't have shroud enabled. ;)

The reason for me being able to reproduce only sometimes was (I think) that
originally, buffering was initialized with random data so it sometimes
delayed the preload event and sometimes it worked correctly.
2011-09-26 13:17:16 +00:00
attic
cmake
data
doc
fonts
graphincludes/project
icons
images
misc/fortunes
packaging
po
projectfiles
resources
scons
sounds
src
utils
website
.gitignore
changelog
CMakeLists.txt
config.h.cmake
COPYING
copyright
Doxyfile
INSTALL
l10n-spec
l10n-track
players_changelog
py-compile
README
RELEASE_NOTES
SConstruct
wesnoth.kdevelop

The game's license is described in COPYING.  Note that for artwork and
music, we interpret "preferred form of the work for making modifications" as
the modifiable form that the author chooses to ship us for the source tree.

See INSTALL for instructions on how to build the game from source code.

A (translated) description of how to play the game can be found in 
doc/manual/manual.*.html .

To be notified of new releases, subscribe to this rss feed:
    http://feed43.com/wesnoth.xml
It does list all news from the Wesnoth frontpage, so you will also have some
additional notifications, but at least you should be aware of all releases.

Wesnoth User and Developer Forums (with over 390,000 posts from more
than 16,000 registered members) can be found at
    http://forums.wesnoth.org/

For extensive documentation about all aspects of the game, see the
official Battle for Wesnoth web site:
    http://www.wesnoth.org/

David White <davidnwhite@verizon.net>