From d467c503785653b777ab6483f2aeb5c8fdb06ed3 Mon Sep 17 00:00:00 2001 From: Chris Bracken Date: Thu, 11 Apr 2019 09:59:08 -0700 Subject: [PATCH] Correct nullability for FlutterStandardReader (flutter/engine#8537) FlutterStandardReader's `readValueOfType:` method returns nil when called with `FlutterStandardFieldNil`. By extension, `readValue` can also return nil values. --- .../platform/darwin/ios/framework/Headers/FlutterCodecs.h | 4 ++-- .../darwin/ios/framework/Source/FlutterStandardCodec.mm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/engine/src/flutter/shell/platform/darwin/ios/framework/Headers/FlutterCodecs.h b/engine/src/flutter/shell/platform/darwin/ios/framework/Headers/FlutterCodecs.h index 0034a0709a0..96c1f5cf0c9 100644 --- a/engine/src/flutter/shell/platform/darwin/ios/framework/Headers/FlutterCodecs.h +++ b/engine/src/flutter/shell/platform/darwin/ios/framework/Headers/FlutterCodecs.h @@ -116,8 +116,8 @@ FLUTTER_EXPORT - (UInt32)readSize; - (void)readAlignment:(UInt8)alignment; - (NSString*)readUTF8; -- (id)readValue; -- (id)readValueOfType:(UInt8)type; +- (nullable id)readValue; +- (nullable id)readValueOfType:(UInt8)type; @end /** diff --git a/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterStandardCodec.mm b/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterStandardCodec.mm index f4b174bb840..f4678d67762 100644 --- a/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterStandardCodec.mm +++ b/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterStandardCodec.mm @@ -408,11 +408,11 @@ using namespace flutter; return [FlutterStandardTypedData typedDataWithData:data type:type]; } -- (id)readValue { +- (nullable id)readValue { return [self readValueOfType:[self readByte]]; } -- (id)readValueOfType:(UInt8)type { +- (nullable id)readValueOfType:(UInt8)type { FlutterStandardField field = (FlutterStandardField)type; switch (field) { case FlutterStandardFieldNil: