Revision: 2870
          http://skim-app.svn.sourceforge.net/skim-app/?rev=2870&view=rev
Author:   hofman
Date:     2007-09-09 14:26:07 -0700 (Sun, 09 Sep 2007)

Log Message:
-----------
Some more code cleaning in FDF parsing.

Modified Paths:
--------------
    trunk/SKFDFParser.m

Modified: trunk/SKFDFParser.m
===================================================================
--- trunk/SKFDFParser.m 2007-09-09 21:16:16 UTC (rev 2869)
+++ trunk/SKFDFParser.m 2007-09-09 21:26:07 UTC (rev 2870)
@@ -481,20 +481,20 @@
 
 - (BOOL)scanFDFObject:(id *)object {
     id tmpObject = nil;
-    BOOL success = YES;
+    BOOL success;
     
-    do {
-        success = [self scanFDFName:&tmpObject] || 
-                  [self scanFDFArray:&tmpObject] || 
-                  [self scanFDFDictionary:&tmpObject] || 
-                  [self scanFDFString:&tmpObject] || 
-                  [self scanFDFHexString:&tmpObject] || 
-                  [self scanFDFIndirectObject:&tmpObject] || 
-                  [self scanFDFNumber:&tmpObject] || 
-                  [self scanFDFBoolean:&tmpObject] || 
-                  [self scanString:@"null" intoString:NULL];
-    } while (success == NO && [self isAtEnd] == NO && [self 
scanFDFComment:NULL]);
+    while ([self scanFDFComment:NULL]);
     
+    success = [self scanFDFName:&tmpObject] || 
+              [self scanFDFArray:&tmpObject] || 
+              [self scanFDFDictionary:&tmpObject] || 
+              [self scanFDFString:&tmpObject] || 
+              [self scanFDFHexString:&tmpObject] || 
+              [self scanFDFIndirectObject:&tmpObject] || 
+              [self scanFDFNumber:&tmpObject] || 
+              [self scanFDFBoolean:&tmpObject] || 
+              [self scanString:@"null" intoString:NULL];
+    
     if (success && object)
         *object = tmpObject;
     
@@ -503,19 +503,13 @@
 
 - (BOOL)scanFDFArray:(NSArray **)array {
     NSMutableArray *tmpArray = [NSMutableArray array];
-    unichar ch;
     id object;
     BOOL success = [self scanString:@"[" intoString:NULL];
     
     while (success) {
         while ([self scanFDFComment:NULL]);
-        if ([self peekCharacter:&ch] == NO) {
-            success = NO;
+        if ([self scanString:@"]" intoString:NULL]) {
             break;
-        }
-        if (ch == ']') {
-            [self scanCharacter:NULL];
-            break;
         } else if (success = [self scanFDFObject:&object]) {
            if (object)
                 [tmpArray addObject:object];
@@ -536,13 +530,11 @@
     
     while (success) {
         while ([self scanFDFComment:NULL]);
-        if ([self scanFDFName:&key]) {
-            if ((success = [self scanFDFObject:&object]) && object)
-                [tmpDict setObject:object forKey:key];
-        } else if ([self scanString:@">>" intoString:NULL]) {
+        if ([self scanString:@">>" intoString:NULL]) {
             break;
-        } else {
-            success = NO;
+        } else if (success = ([self scanFDFName:&key] && [self 
scanFDFObject:&object])) {
+            if (object)
+                [tmpDict setObject:object forKey:key];
         }
     }
     


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to