--- parser3/src/include/pa_stylesheet_connection.h 2002/02/08 07:27:45 1.25 +++ parser3/src/include/pa_stylesheet_connection.h 2002/08/19 09:26:52 1.31 @@ -2,14 +2,14 @@ Parser: Stylesheet connection decl. Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) - Author: Alexander Petrosyan (http://paf.design.ru) - - $Id: pa_stylesheet_connection.h,v 1.25 2002/02/08 07:27:45 paf Exp $ + Author: Alexandr Petrosian (http://paf.design.ru) */ #ifndef PA_STYLESHEET_CONNECTION_H #define PA_STYLESHEET_CONNECTION_H +static const char* IDENT_STYLESHEET_CONNECTION_H="$Date: 2002/08/19 09:26:52 $"; + #include "libxslt/xslt.h" #include "libxslt/xsltInternals.h" @@ -79,14 +79,19 @@ private: void load(time_t new_disk_time) { Pool& pool=*fservices_pool; + int saved=xmlDoValidityCheckingDefaultValue;// + xmlDoValidityCheckingDefaultValue=0;// xsltStylesheet *nstylesheet= xsltParseStylesheetFile(BAD_CAST ffile_spec.cstr(String::UL_FILE_SPEC)); - if(!nstylesheet || xmlHaveGenericErrors()) { + xmlDoValidityCheckingDefaultValue = saved;// + if(xmlHaveGenericErrors()) { GdomeException exc=0; - throw Exception(0, 0, - &ffile_spec, - exc); + throw Exception(&ffile_spec, exc); } + if(!nstylesheet) + throw Exception("file.missing", + &ffile_spec, + "stylesheet failed to load"); xsltFreeStylesheet(fstylesheet); fstylesheet=nstylesheet; @@ -96,7 +101,7 @@ private: time_t get_disk_time() { size_t size; time_t atime, mtime, ctime; - String stamp_file_spec(ffile_spec); + String stamp_file_spec(ffile_spec); stamp_file_spec << STYLESHEET_FILENAME_STAMP_SUFFIX; // {file_spec}.stamp modification time OR {file_spec} const String& stat_file_spec=file_readable(stamp_file_spec)?stamp_file_spec:ffile_spec;