Index: src/OFString+JSONValue.m ================================================================== --- src/OFString+JSONValue.m +++ src/OFString+JSONValue.m @@ -285,10 +285,20 @@ if (*pointer >= stop) return nil; if (**pointer == ']') break; + + if (**pointer == ',') { + (*pointer)++; + skipWhitespacesAndComments(pointer, stop); + + if (*pointer >= stop || **pointer != ']') + return nil; + + break; + } if ((object = nextObject(pointer, stop)) == nil) return nil; [array addObject: object]; @@ -327,10 +337,20 @@ if (*pointer >= stop) return nil; if (**pointer == '}') break; + + if (**pointer == ',') { + (*pointer)++; + skipWhitespacesAndComments(pointer, stop); + + if (*pointer >= stop || **pointer != '}') + return nil; + + break; + } if ((key = nextObject(pointer, stop)) == nil) return nil; skipWhitespacesAndComments(pointer, stop);