@@ -213,12 +213,13 @@ compare: second] != OF_ORDERED_ASCENDING]; else if ([token isEqual: @"+"]) var = [OFNumber numberWithDouble: [first doubleValue] + [second doubleValue]]; else if ([token isEqual: @"%"]) - var = [OFNumber numberWithIntMax: - [first intMaxValue] % [second intMaxValue]]; + var = [OFNumber numberWithLongLong: + [first longLongValue] % + [second longLongValue]]; else if ([token isEqual: @"&&"]) var = [OFNumber numberWithBool: [first boolValue] && [second boolValue]]; else if ([token isEqual: @"||"]) var = [OFNumber numberWithBool: @@ -236,11 +237,12 @@ if ([token isEqual: @"!"]) var = [OFNumber numberWithBool: ![first boolValue]]; else if ([token isEqual: @"is_real"]) var = [OFNumber numberWithBool: - [first doubleValue] != [first intMaxValue]]; + ([first doubleValue] != + [first longLongValue])]; else OF_ENSURE(0); [stack replaceObjectAtIndex: stackSize - 1 withObject: var]; @@ -508,11 +510,12 @@ pool = objc_autoreleasePoolPush(); mapPath = [path stringByAppendingPathComponent: @"languages.json"]; @try { - map = [[OFString stringWithContentsOfFile: mapPath] JSONValue]; + map = [[OFString stringWithContentsOfFile: mapPath] + objectByParsingJSON]; } @catch (OFOpenItemFailedException *e) { objc_autoreleasePoolPop(pool); return; } @@ -532,12 +535,12 @@ } languageFile = [path stringByAppendingPathComponent: [languageFile stringByAppendingString: @".json"]]; - [_localizedStrings addObject: - [[OFString stringWithContentsOfFile: languageFile] JSONValue]]; + [_localizedStrings addObject: [[OFString stringWithContentsOfFile: + languageFile] objectByParsingJSON]]; objc_autoreleasePoolPop(pool); } #endif