Differences From Artifact [27f5b4db4d]:
- File src/OFDNSResolverSettings.m — part of check-in [deb57aa653] at 2022-09-11 11:46:16 on branch trunk — Clean up OFWindowsRegistryKey API (user: js, size: 16595) [annotate] [blame] [check-ins using] [more...]
To Artifact [bdd49f7898]:
- File
src/OFDNSResolverSettings.m
— part of check-in
[cc2c113c29]
at
2022-11-03 21:09:34
on branch trunk
— OFDNSResolverSettings: Don't assume UTF-8
Some systems even come by default with non-UTF-8 characters in those
config files. In particular, a German Windows XP uses non-UTF-8 comments
in there by default. (user: js, size: 16815) [annotate] [blame] [check-ins using] [more...]
︙ | ︙ | |||
264 265 266 267 268 269 270 | } @catch (OFOpenItemFailedException *e) { objc_autoreleasePoolPop(pool); return; } staticHosts = [OFMutableDictionary dictionary]; | > | > | 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 | } @catch (OFOpenItemFailedException *e) { objc_autoreleasePoolPop(pool); return; } staticHosts = [OFMutableDictionary dictionary]; /* Use ISO 8859-1 to ignore any potential non-UTF-8 comments. */ while ((line = [file readLineWithEncoding: OFStringEncodingISO8859_1]) != nil) { OFArray *components, *hosts; size_t pos; OFString *address; pos = [line rangeOfString: @"#"].location; if (pos != OFNotFound) line = [line substringToIndex: pos]; |
︙ | ︙ | |||
364 365 366 367 368 369 370 | objc_autoreleasePoolPop(pool); return; } if (nameServers == nil) nameServers = [OFMutableArray array]; | > | > | 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 | objc_autoreleasePoolPop(pool); return; } if (nameServers == nil) nameServers = [OFMutableArray array]; /* Use ISO 8859-1 to ignore any potential non-UTF-8 comments. */ while ((line = [file readLineWithEncoding: OFStringEncodingISO8859_1]) != nil) { void *pool2 = objc_autoreleasePoolPush(); size_t pos; OFArray *components, *arguments; OFString *option; pos = [line indexOfCharacterFromSet: commentCharacters]; if (pos != OFNotFound) |
︙ | ︙ |