aboutsummaryrefslogtreecommitdiff
path: root/src/function/transform.cc
diff options
context:
space:
mode:
authorAdrian Kummerländer2014-05-14 20:55:51 +0200
committerAdrian Kummerländer2014-05-14 20:55:51 +0200
commit5fbca0993146982ab1dbb0d352c1e15e40b3de22 (patch)
tree7f47a339fb61d5c8423162482494eafd95cc654d /src/function/transform.cc
parent943768ad437011756395b86958399992e6822604 (diff)
downloadInputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar.gz
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar.bz2
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar.lz
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar.xz
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.tar.zst
InputXSLT-5fbca0993146982ab1dbb0d352c1e15e40b3de22.zip
Moved responsibility for argument conversion to FunctionBase descendants
* external functions may expect arguments with a type different from boost::filesystem::path so they are only provided raw string values * moved xalan string conversion logic into separate compilation unit
Diffstat (limited to 'src/function/transform.cc')
-rw-r--r--src/function/transform.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/function/transform.cc b/src/function/transform.cc
index 360b61d..5c53044 100644
--- a/src/function/transform.cc
+++ b/src/function/transform.cc
@@ -10,11 +10,16 @@
namespace InputXSLT {
xercesc::DOMDocument* FunctionTransform::constructDocument(
- const InputXSLT::FilesystemContext&,
+ const InputXSLT::FilesystemContext& fsContext,
const FunctionBase::argument_array& arguments
) {
- const boost::filesystem::path& transformationPath = arguments[0];
- const boost::filesystem::path& targetPath = arguments[1];
+ const boost::filesystem::path transformationPath(
+ fsContext.resolve(arguments[0])
+ );
+
+ const boost::filesystem::path targetPath(
+ fsContext.resolve(arguments[1])
+ );
xercesc::DOMDocument* const domDocument(
xercesc::DOMImplementation::getImplementation()->createDocument(