summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2016-09-18 12:21:44 -0400
committerDavid Robillard <d@drobilla.net>2016-09-18 12:21:44 -0400
commit42cf4f8ce310d2e7c7e349d8b48b6279d767478e (patch)
tree3e13a5815a4a83cd79bd23a9b8b94f035600dc3e
parent39109efb8dc196164911922d199a68747a4788db (diff)
downloadingen-42cf4f8ce310d2e7c7e349d8b48b6279d767478e.tar.gz
ingen-42cf4f8ce310d2e7c7e349d8b48b6279d767478e.tar.bz2
ingen-42cf4f8ce310d2e7c7e349d8b48b6279d767478e.zip
Fix undo of deletions with both blocks and arcs
Also probably other cases of dependent events that must be executed in the correct order for undo to make sense.
-rw-r--r--src/server/UndoStack.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/UndoStack.hpp b/src/server/UndoStack.hpp
index aeb18529..4511d70d 100644
--- a/src/server/UndoStack.hpp
+++ b/src/server/UndoStack.hpp
@@ -68,11 +68,11 @@ public:
const uint32_t size = lv2_atom_total_size(ev);
LV2_Atom* copy = (LV2_Atom*)malloc(size);
memcpy(copy, ev, size);
- events.push_back(copy);
+ events.push_front(copy);
}
- time_t time;
- std::vector<LV2_Atom*> events;
+ time_t time;
+ std::deque<LV2_Atom*> events;
};
UndoStack(URIs& uris, URIMap& map) : _uris(uris), _map(map), _depth(0) {}