Snapshot of commit d5ec1d5018ed24f1b4f32b1d09df6dbd7e2fc425
from branch master of git://git.jetbrains.org/idea/community.git
diff --git a/native/MacLauncher/PropertyFileReader.m b/native/MacLauncher/PropertyFileReader.m
new file mode 100644
index 0000000..43b0682
--- /dev/null
+++ b/native/MacLauncher/PropertyFileReader.m
@@ -0,0 +1,46 @@
+//
+// Created by max on 11/6/12.
+//
+// To change the template use AppCode | Preferences | File Templates.
+//
+
+
+#import "PropertyFileReader.h"
+#import "utils.h"
+
+
+@implementation PropertyFileReader {
+}
+
++ (void)parseProperty:(NSString *)string to:(NSMutableDictionary *)to {
+ NSRange delimiter = [string rangeOfString:@"="];
+ if (delimiter.length > 0 && delimiter.location + 1 <= string.length) {
+ NSString *key = [string substringToIndex:delimiter.location];
+ NSString *value=[string substringFromIndex:delimiter.location + 1];
+ [to setObject:value forKey:key];
+ }
+}
+
++ (NSDictionary *)readFile:(NSString *)path {
+ NSMutableDictionary *answer = [NSMutableDictionary dictionary];
+
+ NSString *contents = readFile(path);
+
+ if (contents) {
+ NSArray *lines = [contents componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];
+ for (NSString *line in lines) {
+ NSString *trimmedLine = trim(line);
+ if ([trimmedLine length] > 0) {
+ if ([trimmedLine characterAtIndex:0] != '#') {
+ [self parseProperty:trimmedLine to:answer];
+ }
+ }
+ }
+
+ return answer;
+ }
+
+ return nil;
+}
+
+@end
\ No newline at end of file