diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-31 21:05:47 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-31 21:05:47 (GMT) |
commit | a61ef07b5eb3dacfc596a26cb1373356e5673dbb (patch) | |
tree | 484f4c1952c493032f8ca42709e001d7cc25be6a /src/uscxml/Interpreter.cpp | |
parent | eab5c12b2a1b9cfee94e8d0cbe41fb5d78594bb5 (diff) | |
download | uscxml-a61ef07b5eb3dacfc596a26cb1373356e5673dbb.zip uscxml-a61ef07b5eb3dacfc596a26cb1373356e5673dbb.tar.gz uscxml-a61ef07b5eb3dacfc596a26cb1373356e5673dbb.tar.bz2 |
Support for ignoring libraries when building and minimal builds
Diffstat (limited to 'src/uscxml/Interpreter.cpp')
-rw-r--r-- | src/uscxml/Interpreter.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/uscxml/Interpreter.cpp b/src/uscxml/Interpreter.cpp index b8e4bfe..c202246 100644 --- a/src/uscxml/Interpreter.cpp +++ b/src/uscxml/Interpreter.cpp @@ -1401,7 +1401,7 @@ void InterpreterImpl::invoke(const Arabica::DOM::Node<std::string>& element) { if (invoker) { tthread::lock_guard<tthread::recursive_mutex> lock(_pluginMutex); try { - + if (!invoker.getElement()) invoker.setElement(Element<std::string>(element)); @@ -1463,12 +1463,12 @@ void InterpreterImpl::cancelInvoke(const Arabica::DOM::Node<std::string>& elemen USCXML_MONITOR_CALLBACK3(beforeUninvoking, Element<std::string>(element), invokeId) _invokers[invokeId].uninvoke(); - + /** * This should not be necessary. Most invokers have their "clean-up" code in their * destructor and not their uninvoke method - we need to refactor them all! */ - if (_dontDestructOnUninvoke.find(invokeId) == _dontDestructOnUninvoke.end()) + if (_invokers[invokeId].deleteOnUninvoke()) _invokers.erase(invokeId); USCXML_MONITOR_CALLBACK3(beforeUninvoking, Element<std::string>(element), invokeId) |