diff options
Diffstat (limited to 'project2/xslRows.cpp')
-rw-r--r-- | project2/xslRows.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/project2/xslRows.cpp b/project2/xslRows.cpp index 9c4ce98..999f196 100644 --- a/project2/xslRows.cpp +++ b/project2/xslRows.cpp @@ -98,11 +98,12 @@ XslRows::execute(const RowProcessor * rp) const xpathCtx->node = rowRoot; values.clear(); BOOST_FOREACH(const FilterView::XPaths::value_type & xp, fv->xpaths) { - if (boost::get<Null>(&xp.second())) { + VariableType path(xp.second()); + if (boost::get<Null>(&path)) { values[xp.first] = Null(); continue; } - xmlXPathObjectSPtr xpathObjI = xmlXPathObjectSPtr(xmlXPathEvalExpression(xp.second(), xpathCtx.get()), xmlXPathFreeObject); + xmlXPathObjectSPtr xpathObjI = xmlXPathObjectSPtr(xmlXPathEvalExpression(path, xpathCtx.get()), xmlXPathFreeObject); if (!xpathObjI) { throw XpathEvalError(xmlGetLastError()->message); } |