Index: src/OFString.h ================================================================== --- src/OFString.h +++ src/OFString.h @@ -113,11 +113,11 @@ /** * Sets the OFString to the specified OFString. * * \param str An OFString to set the OFString to. */ -- setTo: (OFString*)str; +- setTo: (const char*)str; /** * Append another OFString to the OFString. * * \param str An OFString to append Index: src/OFString.m ================================================================== --- src/OFString.m +++ src/OFString.m @@ -240,20 +240,20 @@ - (id)copy { return [OFString stringWithCString: string]; } -- setTo: (OFString*)str +- setTo: (const char*)str { size_t len; if (string != NULL) free(string); - len = [str length]; + len = strlen(str); - switch (check_utf8([str cString], len)) { + switch (check_utf8(str, len)) { case 1: is_utf8 = YES; break; case -1: string = NULL; @@ -263,11 +263,11 @@ @throw [OFInvalidEncodingException newWithClass: [self class]]; } length = len; string = [self getMemWithSize: length + 1]; - memcpy(string, [str cString], length + 1); + memcpy(string, str, length + 1); return self; } - (BOOL)isEqual: (id)obj Index: tests/OFString/OFString.m ================================================================== --- tests/OFString/OFString.m +++ tests/OFString/OFString.m @@ -65,11 +65,11 @@ CHECK([s1 isEqual: s3]) CHECK(![s1 isEqual: [OFObject new]]); [s2 appendCString: "123"]; - [s4 setTo: s2]; + [s4 setTo: [s2 cString]]; CHECK(![s2 compare: s4]) CHECK(!strcmp([[s1 append: s2] cString], "test123")) CHECK(strlen([s1 cString]) == [s1 length] && [s1 length] == 7) CHECK(!strcmp([[s1 reverse] cString], "321tset"))