diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m index 5d811d23bcf5c2fa6e3bc433535bb75f2ee9362e..98e3aae6cd1978a08d96e42c33f6be9b0fc8ac21 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m @@ -25,11 +25,17 @@ #import "CISDOBIpadService.h" ///! Convert a JSON string to objects. Returns nil if the string is nil. -id ObjectFromJsonData(NSString *jsonData, NSError **error) +id ObjectFromJsonData(NSString *jsonDataString, NSError **error) { - if (nil == jsonData) return nil; + if (nil == jsonDataString) return nil; + NSData *jsonData = [jsonDataString dataUsingEncoding: NSUTF8StringEncoding]; + if (!jsonData) { + NSLog(@"Could not convert json string (%@) to UTF-8", jsonDataString); + // Do not treat this as an error -- just log it + return nil; + } - return [NSJSONSerialization JSONObjectWithData: [jsonData dataUsingEncoding: NSASCIIStringEncoding] options: 0 error: error]; + return [NSJSONSerialization JSONObjectWithData: jsonData options: 0 error: error]; }