Differences From Artifact [a8f0eceb0e]:
- File
src/OFXMLParser.m
— part of check-in
[008be86a16]
at
2012-03-12 11:54:22
on branch trunk
— OFArray: +[arrayWithCArray:length:] -> +[arrayWithObjects:count:].
This is required for the new array literals. (user: js, size: 25101) [annotate] [blame] [check-ins using]
To Artifact [8f2d46a92b]:
- File src/OFXMLParser.m — part of check-in [4a080857a2] at 2012-03-16 17:32:00 on branch trunk — OFXMLParser: Don't recreate "attributes" all the time. (user: js, size: 25066) [annotate] [blame] [check-ins using] [more...]
| ︙ | ︙ | |||
185 186 187 188 189 190 191 192 193 194 195 196 197 198 |
@try {
OFAutoreleasePool *pool;
OFMutableDictionary *dict;
cache = [[OFBigDataArray alloc] init];
previous = [[OFMutableArray alloc] init];
namespaces = [[OFMutableArray alloc] init];
pool = [[OFAutoreleasePool alloc] init];
dict = [OFMutableDictionary dictionaryWithKeysAndObjects:
@"xml", @"http://www.w3.org/XML/1998/namespace",
@"xmlns", @"http://www.w3.org/2000/xmlns/", nil];
[namespaces addObject: dict];
| > | 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 |
@try {
OFAutoreleasePool *pool;
OFMutableDictionary *dict;
cache = [[OFBigDataArray alloc] init];
previous = [[OFMutableArray alloc] init];
namespaces = [[OFMutableArray alloc] init];
attributes = [[OFMutableArray alloc] init];
pool = [[OFAutoreleasePool alloc] init];
dict = [OFMutableDictionary dictionaryWithKeysAndObjects:
@"xml", @"http://www.w3.org/XML/1998/namespace",
@"xmlns", @"http://www.w3.org/2000/xmlns/", nil];
[namespaces addObject: dict];
|
| ︙ | ︙ | |||
722 723 724 725 726 727 728 | } else [previous addObject: name]; [pool release]; [name release]; [prefix release]; | | < | 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 | } else [previous addObject: name]; [pool release]; [name release]; [prefix release]; [attributes removeAllObjects]; name = prefix = nil; *last = *i + 1; state = (buffer[*i] == '/' ? OF_XMLPARSER_EXPECT_CLOSE : OF_XMLPARSER_OUTSIDE_TAG); } |
| ︙ | ︙ | |||
823 824 825 826 827 828 829 | if (attributePrefix == nil && [attributeName isEqual: @"xmlns"]) [[namespaces lastObject] setObject: attributeValue forKey: @""]; if ([attributePrefix isEqual: @"xmlns"]) [[namespaces lastObject] setObject: attributeValue forKey: attributeName]; | < < < | 823 824 825 826 827 828 829 830 831 832 833 834 835 836 | if (attributePrefix == nil && [attributeName isEqual: @"xmlns"]) [[namespaces lastObject] setObject: attributeValue forKey: @""]; if ([attributePrefix isEqual: @"xmlns"]) [[namespaces lastObject] setObject: attributeValue forKey: attributeName]; [attributes addObject: [OFXMLAttribute attributeWithName: attributeName namespace: attributePrefix stringValue: attributeValue]]; [pool release]; |
| ︙ | ︙ |