aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/qregisters.cpp
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2013-02-01 19:34:23 +0100
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2013-02-01 19:34:23 +0100
commit9dd2447d42fd6c822139f3cd1fd2cd284346e5e8 (patch)
tree96f00124bc521f631567a619686da012bb199127 /src/qregisters.cpp
parent850206158f6e77a4798f79fe293a7d7b7a7687f0 (diff)
downloadsciteco-9dd2447d42fd6c822139f3cd1fd2cd284346e5e8.tar.gz
fixed buffer Ring initialization
* there was a dependency on interface initialization. it did not cause issues because destruction order was by chance. * introduced INIT_PRIO and PRIO_* macros to easy initialization order declaration (using a PRIO_* formula makes code self-documenting) * also used this to clean up QRegisterTable initialization (we do not need the explicit initialize() method) * also used to clean up symbols initialization
Diffstat (limited to 'src/qregisters.cpp')
-rw-r--r--src/qregisters.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/qregisters.cpp b/src/qregisters.cpp
index eda915b..a13fba1 100644
--- a/src/qregisters.cpp
+++ b/src/qregisters.cpp
@@ -52,7 +52,7 @@ namespace States {
}
namespace QRegisters {
- QRegisterTable globals;
+ QRegisterTable globals INIT_PRIO(PRIO_INTERFACE+1);
QRegisterTable *locals = NULL;
QRegister *current = NULL;
@@ -248,8 +248,7 @@ QRegisterBufferInfo::edit(void)
undo.push_msg(SCI_UNDO);
}
-void
-QRegisterTable::initialize(void)
+QRegisterTable::QRegisterTable(bool _undo) : RBTree(), must_undo(_undo)
{
/* general purpose registers */
for (gchar q = 'A'; q <= 'Z'; q++)