aboutsummaryrefslogtreecommitdiff
path: root/src/function/read_file.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/read_file.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/read_file.cc')
-rw-r--r--src/function/read_file.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/function/read_file.cc b/src/function/read_file.cc
index da0e988..19ca296 100644
--- a/src/function/read_file.cc
+++ b/src/function/read_file.cc
@@ -25,10 +25,12 @@ inline std::string readFile(const boost::filesystem::path& filePath) {
namespace InputXSLT {
xercesc::DOMDocument* FunctionReadFile::constructDocument(
- const FilesystemContext&,
+ const FilesystemContext& fsContext,
const FunctionBase::argument_array& arguments
) {
- const boost::filesystem::path& filePath = arguments[0];
+ const boost::filesystem::path filePath(
+ fsContext.resolve(arguments[0])
+ );
xercesc::DOMDocument* const domDocument(
xercesc::DOMImplementation::getImplementation()->createDocument(