--- parser3/src/classes/xdoc.C 2002/11/25 14:57:32 1.106 +++ parser3/src/classes/xdoc.C 2003/04/04 09:43:10 1.109 @@ -1,14 +1,14 @@ /** @file Parser: @b xdoc parser class. - Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) + Copyright (c) 2001, 2003 ArtLebedev Group (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ #include "classes.h" #ifdef XML -static const char* IDENT_XDOC_C="$Date: 2002/11/25 14:57:32 $"; +static const char* IDENT_XDOC_C="$Date: 2003/04/04 09:43:10 $"; #include "pa_stylesheet_connection.h" #include "pa_request.h" @@ -490,6 +490,10 @@ static void _load(Request& r, const Stri &uri, exc); } + const char *URI_cstr=uri.cstr(); + xmlDoc *doc=gdome_xml_doc_get_xmlDoc(document); + if(URI_cstr) + doc->URL=pool.transcode_buf2xchar(URI_cstr, strlen(URI_cstr)); // replace any previous parsed source vdoc.set_document(document); @@ -613,7 +617,7 @@ static void xdoc2buf(Pool& pool, VXdoc& "xsltNewStylesheet failed"); #define OOS2STYLE(name) \ - stylesheet->name=oo.name?BAD_CAST g_strdup(pool.transcode(*oo.name)->str):0 + stylesheet->name=oo.name?BAD_CAST xmlMemStrdup(pool.transcode(*oo.name)->str):0 #define OOE2STYLE(name) \ stylesheet->name=oo.name