--- parser3/src/classes/xdoc.C 2024/11/11 05:50:09 1.205 +++ parser3/src/classes/xdoc.C 2026/09/29 02:56:52 1.208 @@ -1,7 +1,7 @@ /** @file Parser: @b xdoc parser class. - Copyright (c) 2001-2024 Art. Lebedev Studio (http://www.artlebedev.com) + Copyright (c) 2001-2026 Art. Lebedev Studio (https://www.artlebedev.com) Authors: Konstantin Morshnev , Alexandr Petrosian */ @@ -28,7 +28,7 @@ #include "xnode.h" #include "pa_charsets.h" -volatile const char * IDENT_XDOC_C="$Id: xdoc.C,v 1.205 2024/11/11 05:50:09 moko Exp $"; +volatile const char * IDENT_XDOC_C="$Id: xdoc.C,v 1.208 2026/09/29 02:56:52 moko Exp $"; // defines @@ -382,7 +382,7 @@ static void _create(Request& r, MethodPa const char* URI_cstr; if(params.count()>1) { // absolute(param) const String& URI=params.as_string(0, "URI must be string"); - URI_cstr=r.full_disk_path(URI).cstr(); + URI_cstr=r.full_disk_path(URI, PA_ALLOW_ALL).cstr(); } else // default = disk path to requested document URI_cstr=r.request_info.path_translated; if(URI_cstr) @@ -523,7 +523,7 @@ static void _file(Request& r, MethodPara static void _save(Request& r, MethodParams& params) { VXdoc& vdoc=GET_SELF(r, VXdoc); - const String& file_spec=r.full_disk_path(params.as_string(0, FILE_NAME_MUST_BE_STRING)); + const String& file_spec=r.full_disk_path(params.as_file_name(0)); XDocOutputOptions oo(vdoc.output_options); oo.append(r, get_options(params, 1)); @@ -645,7 +645,7 @@ static void _transform(Request& r, Metho result=&_transform(r, 0, vdoc, stylesheet, transform_params); } else { // stylesheet (file name) // extablish stylesheet connection - const String& stylesheet_filespec=r.full_disk_path(params.as_string(0, "stylesheet must be file name (string) or DOM document (xdoc)")); + const String& stylesheet_filespec=r.full_disk_path(params.as_string(0, "stylesheet must be file name (string) or DOM document (xdoc)"), PA_ALLOW_ALL); Stylesheet_connection_ptr connection(stylesheet_manager->get_connection(stylesheet_filespec)); // load and compile file to stylesheet [or get cached if any]