diff options
author | alexzhornyak <alexander.zhornyak@gmail.com> | 2017-05-07 19:00:01 (GMT) |
---|---|---|
committer | alexzhornyak <alexander.zhornyak@gmail.com> | 2017-05-07 19:00:01 (GMT) |
commit | 4f2dee08e0e77fcccd55a17add874f4a1ebc1be8 (patch) | |
tree | fb05845a4775427e14ff95dd1209dd57329669c1 /src | |
parent | 43936ecb53a0eb582eaf3a56ec0c016f8c47ae7f (diff) | |
download | uscxml-4f2dee08e0e77fcccd55a17add874f4a1ebc1be8.zip uscxml-4f2dee08e0e77fcccd55a17add874f4a1ebc1be8.tar.gz uscxml-4f2dee08e0e77fcccd55a17add874f4a1ebc1be8.tar.bz2 |
Issue with test 179
Corrected BasicContentExecutor to pass test 179
Diffstat (limited to 'src')
-rw-r--r-- | src/uscxml/interpreter/BasicContentExecutor.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/uscxml/interpreter/BasicContentExecutor.cpp b/src/uscxml/interpreter/BasicContentExecutor.cpp index 96777b1..a21255a 100644 --- a/src/uscxml/interpreter/BasicContentExecutor.cpp +++ b/src/uscxml/interpreter/BasicContentExecutor.cpp @@ -691,9 +691,19 @@ Data BasicContentExecutor::elementAsData(XERCESC_NS::DOMElement* element, bool a contentSS << X((*textIter)->getNodeValue()); } + // this must be handled in getAsData // test294, test562 if (LOCALNAME(element) == "content") { - return Data(spaceNormalize(contentSS.str()), Data::VERBATIM); + // need first try getAsData because how to pass 179 ? + try { + // test153, we need to throw for test150 in promela + Data d = _callbacks->getAsData(contentSS.str()); + if (!d.empty()) + return d; + } + catch (ErrorEvent &) { + return Data(spaceNormalize(contentSS.str()), Data::VERBATIM); + } } if (asExpression) // not actually used, but likely expected |