@@ -203,15 +203,15 @@ if ((startsWithEmpty = [[array firstObject] isEqual: @""])) [array removeObjectAtIndex: 0]; endsWithEmpty = [[array lastObject] isEqual: @""]; while (!done) { - size_t i, length = [array count]; + size_t length = [array count]; done = true; - for (i = 0; i < length; i++) { + for (size_t i = 0; i < length; i++) { id object = [array objectAtIndex: i]; id parent; if (i > 0) parent = [array objectAtIndex: i - 1]; @@ -1190,16 +1190,16 @@ - (size_t)cStringLengthWithEncoding: (of_string_encoding_t)encoding { switch (encoding) { case OF_STRING_ENCODING_UTF_8:; const of_unichar_t *characters; - size_t i, length, UTF8StringLength = 0; + size_t length, UTF8StringLength = 0; characters = [self characters]; length = [self length]; - for (i = 0; i < length; i++) { + for (size_t i = 0; i < length; i++) { char buffer[4]; size_t len = of_string_utf8_encode(characters[i], buffer); if (len == 0) @@ -1231,13 +1231,11 @@ } - (void)getCharacters: (of_unichar_t*)buffer inRange: (of_range_t)range { - size_t i; - - for (i = 0; i < range.length; i++) + for (size_t i = 0; i < range.length; i++) buffer[i] = [self characterAtIndex: range.location + i]; } - (bool)isEqual: (id)object { @@ -1287,11 +1285,11 @@ - (of_comparison_result_t)compare: (id )object { void *pool; OFString *otherString; const of_unichar_t *characters, *otherCharacters; - size_t i, minimumLength; + size_t minimumLength; if (object == self) return OF_ORDERED_SAME; if (![object isKindOfClass: [OFString class]]) @@ -1304,11 +1302,11 @@ pool = objc_autoreleasePoolPush(); characters = [self characters]; otherCharacters = [otherString characters]; - for (i = 0; i < minimumLength; i++) { + for (size_t i = 0; i < minimumLength; i++) { if (characters[i] > otherCharacters[i]) { objc_autoreleasePoolPop(pool); return OF_ORDERED_DESCENDING; } @@ -1330,11 +1328,11 @@ - (of_comparison_result_t)caseInsensitiveCompare: (OFString*)otherString { void *pool = objc_autoreleasePoolPush(); const of_unichar_t *characters, *otherCharacters; - size_t i, length, otherLength, minimumLength; + size_t length, otherLength, minimumLength; if (otherString == self) return OF_ORDERED_SAME; characters = [self characters]; @@ -1342,11 +1340,11 @@ length = [self length]; otherLength = [otherString length]; minimumLength = (length > otherLength ? otherLength : length); - for (i = 0; i < minimumLength; i++) { + for (size_t i = 0; i < minimumLength; i++) { of_unichar_t c = characters[i]; of_unichar_t oc = otherCharacters[i]; if (c >> 8 < OF_UNICODE_CASEFOLDING_TABLE_SIZE) { of_unichar_t tc = @@ -1385,16 +1383,16 @@ } - (uint32_t)hash { const of_unichar_t *characters = [self characters]; - size_t i, length = [self length]; + size_t length = [self length]; uint32_t hash; OF_HASH_INIT(hash); - for (i = 0; i < length; i++) { + for (size_t i = 0; i < length; i++) { const of_unichar_t c = characters[i]; OF_HASH_ADD(hash, (c & 0xFF0000) >> 16); OF_HASH_ADD(hash, (c & 0x00FF00) >> 8); OF_HASH_ADD(hash, c & 0x0000FF); @@ -1565,11 +1563,11 @@ range: (of_range_t)range { void *pool; const of_unichar_t *searchCharacters; of_unichar_t *characters; - size_t i, searchLength; + size_t searchLength; if ((searchLength = [string length]) == 0) return of_range(0, 0); if (searchLength > range.length) @@ -1590,11 +1588,11 @@ @try { [self getCharacters: characters inRange: range]; if (options & OF_STRING_SEARCH_BACKWARDS) { - for (i = range.length - searchLength;; i--) { + for (size_t i = range.length - searchLength;; i--) { if (memcmp(characters + i, searchCharacters, searchLength * sizeof(of_unichar_t)) == 0) { objc_autoreleasePoolPop(pool); return of_range(range.location + i, searchLength); @@ -1603,11 +1601,12 @@ /* No match and we're at the last character */ if (i == 0) break; } } else { - for (i = 0; i <= range.length - searchLength; i++) { + for (size_t i = 0; + i <= range.length - searchLength; i++) { if (memcmp(characters + i, searchCharacters, searchLength * sizeof(of_unichar_t)) == 0) { objc_autoreleasePoolPop(pool); return of_range(range.location + i, searchLength); @@ -1625,11 +1624,11 @@ - (bool)containsString: (OFString*)string { void *pool; const of_unichar_t *characters, *searchCharacters; - size_t i, length, searchLength; + size_t length, searchLength; if ((searchLength = [string length]) == 0) return true; if (searchLength > (length = [self length])) @@ -1638,11 +1637,11 @@ pool = objc_autoreleasePoolPush(); characters = [self characters]; searchCharacters = [string characters]; - for (i = 0; i <= length - searchLength; i++) { + for (size_t i = 0; i <= length - searchLength; i++) { if (memcmp(characters + i, searchCharacters, searchLength * sizeof(of_unichar_t)) == 0) { objc_autoreleasePoolPop(pool); return true; } @@ -1906,11 +1905,11 @@ OFMutableArray *array = [OFMutableArray array]; const of_unichar_t *characters, *delimiterCharacters; bool skipEmpty = (options & OF_STRING_SKIP_EMPTY); size_t length = [self length]; size_t delimiterLength = [delimiter length]; - size_t i, last; + size_t last; OFString *component; pool = objc_autoreleasePoolPush(); characters = [self characters]; @@ -1923,11 +1922,12 @@ objc_autoreleasePoolPop(pool); return array; } - for (i = 0, last = 0; i <= length - delimiterLength; i++) { + last = 0; + for (size_t i = 0; i <= length - delimiterLength; i++) { if (memcmp(characters + i, delimiterCharacters, delimiterLength * sizeof(of_unichar_t)) != 0) continue; component = [self substringWithRange: of_range(last, i - last)]; @@ -2052,11 +2052,11 @@ - (OFString*)stringByDeletingLastPathComponent { void *pool; const of_unichar_t *characters; - size_t i, length = [self length]; + size_t length = [self length]; if (length == 0) return @""; pool = objc_autoreleasePoolPush(); @@ -2069,11 +2069,11 @@ if (length == 0) { objc_autoreleasePoolPop(pool); return [self substringWithRange: of_range(0, 1)]; } - for (i = length - 1; i >= 1; i--) { + for (size_t i = length - 1; i >= 1; i--) { if (OF_IS_PATH_DELIMITER(characters[i])) { objc_autoreleasePoolPop(pool); return [self substringWithRange: of_range(0, i)]; } } @@ -2330,20 +2330,19 @@ OFObject *object = [[[OFObject alloc] init] autorelease]; void *pool = objc_autoreleasePoolPush(); const of_unichar_t *characters = [self characters]; size_t length = [self length]; of_char16_t *ret; - size_t i, j; + size_t j; bool swap = (byteOrder != OF_BYTE_ORDER_NATIVE); /* Allocate memory for the worst case */ ret = [object allocMemoryWithSize: sizeof(of_char16_t) count: (length + 1) * 2]; j = 0; - - for (i = 0; i < length; i++) { + for (size_t i = 0; i < length; i++) { of_unichar_t c = characters[i]; if (c > 0x10FFFF) @throw [OFInvalidEncodingException exception]; @@ -2379,15 +2378,15 @@ } - (size_t)UTF16StringLength { const of_unichar_t *characters = [self characters]; - size_t i, length, UTF16StringLength; + size_t length, UTF16StringLength; length = UTF16StringLength = [self length]; - for (i = 0; i < length; i++) + for (size_t i = 0; i < length; i++) if (characters[i] > 0xFFFF) UTF16StringLength++; return UTF16StringLength; } @@ -2407,16 +2406,13 @@ count: length + 1]; [self getCharacters: ret inRange: of_range(0, length)]; ret[length] = 0; - if (byteOrder != OF_BYTE_ORDER_NATIVE) { - size_t i; - - for (i = 0; i < length; i++) + if (byteOrder != OF_BYTE_ORDER_NATIVE) + for (size_t i = 0; i < length; i++) ret[i] = OF_BSWAP32(ret[i]); - } return ret; } #ifdef OF_HAVE_FILES