Minor changes to clarify code.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22980 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2006-05-24 11:28:04 +00:00
parent 7d003f1b44
commit 491faa3c8e
2 changed files with 10 additions and 15 deletions

View file

@ -3,6 +3,8 @@
* Source/NSPredicate.m: Restore last changes with varargs rewrite * Source/NSPredicate.m: Restore last changes with varargs rewrite
using va_copy to try to make code portable. This version compiles using va_copy to try to make code portable. This version compiles
on systems where va_list is not a simple pointer, but is untested. on systems where va_list is not a simple pointer, but is untested.
* Source/GSString.m: Use GSIsByteEncoding() to test whether an
encoding can hold ascii data.
2006-05-24 Richard Frith-Macdonald <rfm@gnu.org> 2006-05-24 Richard Frith-Macdonald <rfm@gnu.org>

View file

@ -980,11 +980,7 @@ canBeConvertedToEncoding_c(GSStr self, NSStringEncoding enc)
&& enc != internalEncoding && enc != internalEncoding
&& enc != NSUTF8StringEncoding && enc != NSUTF8StringEncoding
&& enc != NSUnicodeStringEncoding && enc != NSUnicodeStringEncoding
&& ((internalEncoding != NSASCIIStringEncoding) && ((internalEncoding != NSASCIIStringEncoding) || !GSIsByteEncoding(enc)))
|| ((enc != NSISOLatin1StringEncoding)
&& (enc != NSISOLatin2StringEncoding)
&& (enc != NSNEXTSTEPStringEncoding)
&& (enc != NSNonLossyASCIIStringEncoding))))
{ {
unsigned l = 0; unsigned l = 0;
unichar *r = 0; unichar *r = 0;
@ -1345,7 +1341,7 @@ cStringLength_u(GSStr self, NSStringEncoding enc)
} }
static inline NSData* static inline NSData*
dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL flag) dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL lossy)
{ {
unsigned len = self->_count; unsigned len = self->_count;
@ -1356,10 +1352,7 @@ dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL flag)
if ((encoding == internalEncoding) if ((encoding == internalEncoding)
|| ((internalEncoding == NSASCIIStringEncoding) || ((internalEncoding == NSASCIIStringEncoding)
&& ((encoding == NSISOLatin1StringEncoding) && (encoding == NSUTF8StringEncoding || GSIsByteEncoding(encoding))))
|| (encoding == NSISOLatin2StringEncoding)
|| (encoding == NSNEXTSTEPStringEncoding)
|| (encoding == NSNonLossyASCIIStringEncoding))))
{ {
unsigned char *buff; unsigned char *buff;
@ -1373,7 +1366,7 @@ dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL flag)
unichar *r = 0; unichar *r = 0;
unsigned int options = GSUniBOM; unsigned int options = GSUniBOM;
if (flag == NO) if (lossy == NO)
{ {
options |= GSUniStrict; options |= GSUniStrict;
} }
@ -1399,7 +1392,7 @@ dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL flag)
format: @"Can't convert to Unicode string."]; format: @"Can't convert to Unicode string."];
} }
if (GSFromUnicode(&r, &s, u, l, encoding, NSDefaultMallocZone(), if (GSFromUnicode(&r, &s, u, l, encoding, NSDefaultMallocZone(),
(flag == NO) ? GSUniStrict : 0) == NO) (lossy == NO) ? GSUniStrict : 0) == NO)
{ {
NSZoneFree(NSDefaultMallocZone(), u); NSZoneFree(NSDefaultMallocZone(), u);
return nil; return nil;
@ -1410,7 +1403,7 @@ dataUsingEncoding_c(GSStr self, NSStringEncoding encoding, BOOL flag)
} }
static inline NSData* static inline NSData*
dataUsingEncoding_u(GSStr self, NSStringEncoding encoding, BOOL flag) dataUsingEncoding_u(GSStr self, NSStringEncoding encoding, BOOL lossy)
{ {
unsigned len = self->_count; unsigned len = self->_count;
@ -1428,7 +1421,7 @@ dataUsingEncoding_u(GSStr self, NSStringEncoding encoding, BOOL flag)
if ((l = GSUnicode(self->_contents.u, len, 0, 0)) != len) if ((l = GSUnicode(self->_contents.u, len, 0, 0)) != len)
{ {
if (flag == NO) if (lossy == NO)
{ {
return nil; return nil;
} }
@ -1466,7 +1459,7 @@ dataUsingEncoding_u(GSStr self, NSStringEncoding encoding, BOOL flag)
unsigned int l = 0; unsigned int l = 0;
if (GSFromUnicode(&r, &l, self->_contents.u, self->_count, encoding, if (GSFromUnicode(&r, &l, self->_contents.u, self->_count, encoding,
NSDefaultMallocZone(), (flag == NO) ? GSUniStrict : 0) == NO) NSDefaultMallocZone(), (lossy == NO) ? GSUniStrict : 0) == NO)
{ {
return nil; return nil;
} }