From 70d0ab91b7ba0d8d13c34594d2f8886a91117560 Mon Sep 17 00:00:00 2001 From: meancoot Date: Thu, 21 Feb 2013 15:37:51 -0500 Subject: [PATCH] ios: Fix .rafilter files not being closed in certain situations. --- ios/RetroArch/RADirectoryFilterList.m | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/ios/RetroArch/RADirectoryFilterList.m b/ios/RetroArch/RADirectoryFilterList.m index ef67dc4f29..5f9e96f5e4 100644 --- a/ios/RetroArch/RADirectoryFilterList.m +++ b/ios/RetroArch/RADirectoryFilterList.m @@ -32,15 +32,21 @@ { config_file_t* configFile = config_file_new([[path stringByAppendingPathComponent:@".rafilter"] UTF8String]); - unsigned filterCount = 0; - char* regexValue= 0; - - if (configFile && config_get_uint(configFile, "filter_count", &filterCount) && filterCount > 1) - return [[RADirectoryFilterList alloc] initWithPath:path config:configFile]; - else if (regex && filterCount == 1 && config_get_string(configFile, "filter_1_regex", ®exValue)) - *regex = [NSRegularExpression regularExpressionWithPattern:[NSString stringWithUTF8String:regexValue] options:0 error:nil]; - - free(regexValue); + if (configFile) + { + unsigned filterCount = 0; + if (configFile && config_get_uint(configFile, "filter_count", &filterCount) && filterCount > 1) + return [[RADirectoryFilterList alloc] initWithPath:path config:configFile]; + + char* regexValue = 0; + if (regex && filterCount == 1 && config_get_string(configFile, "filter_1_regex", ®exValue)) + { + *regex = [NSRegularExpression regularExpressionWithPattern:[NSString stringWithUTF8String:regexValue] options:0 error:nil]; + free(regexValue); + } + + config_file_free(configFile); + } } return nil;