From dfa53577fcf7345e67485e71ecc20ec82f9dd521 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Fri, 18 Jul 2014 23:57:17 +0200 Subject: Set SystemId for node based xalan::XSLTInputSource parameters * entities in transformations passed by DOM to FunctionGenerate or FunctionTransform require a valid system id as a FilesystemContext base to be resolved * added getBase member method to FilesystemContext --- src/support/type/xobject_value.cc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/support/type') diff --git a/src/support/type/xobject_value.cc b/src/support/type/xobject_value.cc index a788e8e..9bb6648 100644 --- a/src/support/type/xobject_value.cc +++ b/src/support/type/xobject_value.cc @@ -9,6 +9,7 @@ #include #include "support/xalan_string.h" +#include "support/xerces_string_guard.h" namespace InputXSLT { @@ -73,7 +74,15 @@ xalan::XSLTInputSource XObjectValue::get( this->get(ptr).string().data() ); } else { - return xalan::XSLTInputSource(node); + xalan::XSLTInputSource source(node); + + source.setSystemId( + *XercesStringGuard( + this->filesystem_context_.getBase().string() + ) + ); + + return source; } } -- cgit v1.2.3