From e3c7b3fae5f5398c7dc9dd8e726d2398ac250321 Mon Sep 17 00:00:00 2001 From: richard Date: Wed, 8 Nov 2000 16:02:49 +0000 Subject: [PATCH] Fix transmute function to be more efficient. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@8068 72102866-910b-0410-8b05-ffd578937521 --- Source/GSString.m | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Source/GSString.m b/Source/GSString.m index e3e826ab1..eb32ea04b 100644 --- a/Source/GSString.m +++ b/Source/GSString.m @@ -1365,15 +1365,15 @@ transmute(ivars self, NSString *aString) * string whose ivars we can access directly. */ transmute = NO; - if ((c != GSMutableStringClass || other->_flags.wide != 1) - && c != GSUnicodeStringClass) + if (GSObjCIsKindOf(c, GSUnicodeStringClass) == NO + && (c != GSMutableStringClass || other->_flags.wide != 1)) { other = 0; } } else { - if (c == GSCStringClass || c == NXConstantStringClass + if (GSObjCIsKindOf(c, GSCStringClass) || c == NXConstantStringClass || (c == GSMutableStringClass && other->_flags.wide == 0)) { /* @@ -1393,7 +1393,7 @@ transmute(ivars self, NSString *aString) other = 0; } else if ((c == GSMutableStringClass && other->_flags.wide == 1) - || c == GSUnicodeStringClass) + || GSObjCIsKindOf(c, GSUnicodeStringClass) == YES) { /* * This is a C string, and the other string can not be converted