summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/macro.h
diff options
context:
space:
mode:
authorRobert Vollmert <rvollmert@gmx.net>2010-05-13 13:12:13 +0200
committerRobert Vollmert <rvollmert@gmx.net>2010-05-13 13:15:18 +0200
commit9dc5ce5f16f394e8656b54dcbe356f1355bd1ee0 (patch)
treec7482b8e3cfc4c302763a145c2da3d74b6ef66cc /crawl-ref/source/macro.h
parent5b6c10612ea1bd32510a0fff43789aa09f1872c7 (diff)
downloadcrawl-ref-9dc5ce5f16f394e8656b54dcbe356f1355bd1ee0.tar.gz
crawl-ref-9dc5ce5f16f394e8656b54dcbe356f1355bd1ee0.zip
Track what keys in the macro buffer have been expanded.
This should fix problems where expanded keys were re-expanded, e.g. #1226. It's still really messy, and macro.cc:Buffer should eventually be replaced by something better, either a queue that explicitly distinguishes the types of things it contains (raw key, expanded key, etc), or separate containers for different kinds of keys.
Diffstat (limited to 'crawl-ref/source/macro.h')
-rw-r--r--crawl-ref/source/macro.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/crawl-ref/source/macro.h b/crawl-ref/source/macro.h
index ddcc1612da..41da79d3a3 100644
--- a/crawl-ref/source/macro.h
+++ b/crawl-ref/source/macro.h
@@ -48,8 +48,10 @@ void macro_save();
void macro_userfn(const char *keys, const char *registryname);
-void macro_buf_add(int key, bool reverse = false);
-void macro_buf_add(const keyseq &actions, bool reverse = false);
+void macro_buf_add(int key,
+ bool reverse = false, bool expanded = true);
+void macro_buf_add(const keyseq &actions,
+ bool reverse = false, bool expanded = true);
int macro_buf_get();
void macro_buf_add_cmd(command_type cmd, bool reverse = false);