mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-23 09:04:13 +00:00
* Headers/Foundation/NSXMLNodeOptions.h: Add new 10.7 options.
* Source/NSXMLDocument.m: Use XML_PARSE_NONET as the default option for xmlReadMemory. Add XML_PARSE_NOENT when NSXMLNodeLoadExternalEntitiesNever is set. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37792 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
e597f98298
commit
25a2db68d6
3 changed files with 26 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
|||
2014-04-11 Fred Kiefer <fredkiefer@gmx.de>
|
||||
|
||||
* Headers/Foundation/NSXMLNodeOptions.h: Add new 10.7 options.
|
||||
* Source/NSXMLDocument.m: Use XML_PARSE_NONET as the default
|
||||
option for xmlReadMemory. Add XML_PARSE_NOENT when
|
||||
NSXMLNodeLoadExternalEntitiesNever is set.
|
||||
|
||||
2014-03-28 Richard Frith-Macdonald <rfm@gnu.org>
|
||||
|
||||
* Source/NSXMLParser.m: If parsing something which contains data
|
||||
|
|
|
@ -97,10 +97,19 @@ enum {
|
|||
|
||||
NSXMLDocumentValidate = 1 << 13,
|
||||
|
||||
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7,GS_API_LATEST)
|
||||
NSXMLNodeLoadExternalEntitiesAlways = 1 << 14,
|
||||
NSXMLNodeLoadExternalEntitiesSameOriginOnly = 1 << 15,
|
||||
#endif
|
||||
|
||||
NSXMLDocumentXInclude = 1 << 16,
|
||||
|
||||
NSXMLNodePrettyPrint = 1 << 17,
|
||||
NSXMLDocumentIncludeContentTypeDeclaration = 1 << 18,
|
||||
|
||||
#if OS_API_VERSION(MAC_OS_X_VERSION_10_7,GS_API_LATEST)
|
||||
NSXMLNodeLoadExternalEntitiesNever = 1 << 19,
|
||||
#endif
|
||||
|
||||
NSXMLNodePreserveNamespaceOrder = 1 << 20,
|
||||
NSXMLNodePreserveAttributeOrder = 1 << 21,
|
||||
|
|
|
@ -128,6 +128,15 @@ GS_PRIVATE_INTERNAL(NSXMLDocument)
|
|||
xmlOptions |= XML_PARSE_NOBLANKS;
|
||||
//xmlKeepBlanksDefault(0);
|
||||
}
|
||||
if (mask & NSXMLNodeLoadExternalEntitiesNever)
|
||||
{
|
||||
xmlOptions |= XML_PARSE_NOENT;
|
||||
}
|
||||
if (!(mask & NSXMLNodeLoadExternalEntitiesAlways))
|
||||
{
|
||||
xmlOptions |= XML_PARSE_NONET;
|
||||
}
|
||||
|
||||
doc = xmlReadMemory([data bytes], [data length],
|
||||
url, encoding, xmlOptions);
|
||||
if (doc == NULL)
|
||||
|
@ -425,7 +434,7 @@ GS_PRIVATE_INTERNAL(NSXMLDocument)
|
|||
#ifdef HAVE_LIBXSLT
|
||||
xmlChar **params = NULL;
|
||||
xmlDocPtr stylesheetDoc = xmlReadMemory([xslt bytes], [xslt length],
|
||||
NULL, NULL, XML_PARSE_NOERROR);
|
||||
NULL, NULL, XML_PARSE_NOERROR | XML_PARSE_NONET);
|
||||
xsltStylesheetPtr stylesheet = xsltParseStylesheetDoc(stylesheetDoc);
|
||||
xmlDocPtr resultDoc = NULL;
|
||||
|
||||
|
|
Loading…
Reference in a new issue