From 6fecf5e8f7e7e51311ea955970ad79f3568a65db Mon Sep 17 00:00:00 2001 From: helge Date: Sun, 18 Mar 2007 17:41:14 +0000 Subject: [PATCH] lF fixes git-svn-id: http://svn.opengroupware.org/SOPE/trunk@1467 e4a50df8-12e2-0310-a44c-efbce7f8a7e3 --- sope-xml/libxmlSAXDriver/ChangeLog | 4 ++++ sope-xml/libxmlSAXDriver/Version | 2 +- sope-xml/libxmlSAXDriver/libxmlSAXDriver.m | 9 ++++++--- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/sope-xml/libxmlSAXDriver/ChangeLog b/sope-xml/libxmlSAXDriver/ChangeLog index c4566d4c..7a6aa4c4 100644 --- a/sope-xml/libxmlSAXDriver/ChangeLog +++ b/sope-xml/libxmlSAXDriver/ChangeLog @@ -1,3 +1,7 @@ +2006-07-03 Helge Hess + + * libXMLSaxDriver.m: fixed last changes for libFoundation (v4.5.24) + 2007-03-18 Marcus Mueller * libxmlSAXDriver.m: rewrote decoding of hexadecimal entities as diff --git a/sope-xml/libxmlSAXDriver/Version b/sope-xml/libxmlSAXDriver/Version index 60803b07..0ad25001 100644 --- a/sope-xml/libxmlSAXDriver/Version +++ b/sope-xml/libxmlSAXDriver/Version @@ -1,3 +1,3 @@ # version -SUBMINOR_VERSION:=26 +SUBMINOR_VERSION:=27 diff --git a/sope-xml/libxmlSAXDriver/libxmlSAXDriver.m b/sope-xml/libxmlSAXDriver/libxmlSAXDriver.m index 599a2c05..65596f08 100644 --- a/sope-xml/libxmlSAXDriver/libxmlSAXDriver.m +++ b/sope-xml/libxmlSAXDriver/libxmlSAXDriver.m @@ -1,5 +1,6 @@ /* - Copyright (C) 2000-2005 SKYRIX Software AG + Copyright (C) 2000-2007 SKYRIX Software AG + Copyright (C) 2007 Helge Hess This file is part of SOPE. @@ -101,7 +102,10 @@ static inline NSString *xmlCharsToDecodedString(const xmlChar *_s) { break; } } + if (needsDecoding) { + // TODO: This needs *serious* cleanup. Two small unichar buffers + // would be 10x faster and half the codesize. NSMutableString *ds; ds = [[NSMutableString alloc] initWithCapacity:len]; @@ -124,8 +128,7 @@ static inline NSString *xmlCharsToDecodedString(const xmlChar *_s) { unsigned value; vr = NSMakeRange(i + 3, r.location - i - 3); - shex = [[s substringWithRange:vr] - cStringUsingEncoding:NSASCIIStringEncoding]; + shex = [[s substringWithRange:vr] cString]; sscanf(shex, "%x", &value); c = (unichar)value; } -- 2.39.5