summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mapmark.cc
diff options
context:
space:
mode:
authorDarshan Shaligram <dshaligram@users.sourceforge.net>2010-07-24 23:07:53 +0530
committerDarshan Shaligram <dshaligram@users.sourceforge.net>2010-07-24 23:09:14 +0530
commit70261b8afc835d83a3c7f93cfc3e4ac8e415281d (patch)
tree3c63c2eecdb70d60a9ab248f007f8406acd512da /crawl-ref/source/mapmark.cc
parent1ff9c6231bc7c2d208b57ca081b1a0e5e69350b0 (diff)
downloadcrawl-ref-70261b8afc835d83a3c7f93cfc3e4ac8e415281d.tar.gz
crawl-ref-70261b8afc835d83a3c7f93cfc3e4ac8e415281d.zip
Don't set have_inactive_markers when moving markers or assigning from another map_markers object.
Diffstat (limited to 'crawl-ref/source/mapmark.cc')
-rw-r--r--crawl-ref/source/mapmark.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/crawl-ref/source/mapmark.cc b/crawl-ref/source/mapmark.cc
index 6111173942..fb7ea0f253 100644
--- a/crawl-ref/source/mapmark.cc
+++ b/crawl-ref/source/mapmark.cc
@@ -643,6 +643,7 @@ void map_markers::init_from(const map_markers &c)
{
add( i->second->clone() );
}
+ have_inactive_markers = c.have_inactive_markers;
}
void map_markers::clear_need_activate()
@@ -761,6 +762,7 @@ map_marker *map_markers::find(map_marker_type type)
void map_markers::move(const coord_def &from, const coord_def &to)
{
+ unwind_bool inactive(have_inactive_markers);
std::pair<dgn_marker_map::iterator, dgn_marker_map::iterator>
els = markers.equal_range(from);
@@ -782,6 +784,7 @@ void map_markers::move(const coord_def &from, const coord_def &to)
void map_markers::move_marker(map_marker *marker, const coord_def &to)
{
+ unwind_bool inactive(have_inactive_markers);
unlink_marker(marker);
marker->pos = to;
add(marker);