From 34d23262c8c55663bc808a3bf99ef0579895bb49 Mon Sep 17 00:00:00 2001 From: Liam Appelbe Date: Fri, 11 Oct 2024 16:41:50 +1100 Subject: [PATCH] fix analysis and remove delegate stuff --- pkgs/objective_c/lib/src/ns_input_stream.dart | 10 ++++---- pkgs/objective_c/src/input_stream_adapter.m | 24 +++++++++---------- .../test/ns_input_stream_test.dart | 4 ++-- pkgs/objective_c/test/util.dart | 3 ++- 4 files changed, 21 insertions(+), 20 deletions(-) diff --git a/pkgs/objective_c/lib/src/ns_input_stream.dart b/pkgs/objective_c/lib/src/ns_input_stream.dart index 068996554..1089a009f 100644 --- a/pkgs/objective_c/lib/src/ns_input_stream.dart +++ b/pkgs/objective_c/lib/src/ns_input_stream.dart @@ -25,26 +25,26 @@ extension NSInputStreamStreamExtension on Stream> { late final StreamSubscription dataSubscription; dataSubscription = listen((data) { - print("NSInputStream: 0"); + print('NSInputStream: 0'); if (inputStream.addData_(data.toNSData()) > maxReadAheadSize) { dataSubscription.pause(); } }, onError: (Object e) { - print("NSInputStream: 1 $e"); + print('NSInputStream: 1 $e'); final d = NSMutableDictionary.new1(); d.setObject_forKey_(e.toString().toNSString(), NSLocalizedDescriptionKey); inputStream.setError_(NSError.errorWithDomain_code_userInfo_( 'DartError'.toNSString(), 0, d)); port.close(); }, onDone: () { - print("NSInputStream: 2"); + print('NSInputStream: 2'); inputStream.setDone(); port.close(); }, cancelOnError: true); dataSubscription.pause(); port.listen((count) { - print("NSInputStream: 3 $count"); + print('NSInputStream: 3 $count'); // -1 indicates that the `NSInputStream` is closed. All other values // indicate that the `NSInputStream` needs more data. if (count == -1) { @@ -53,7 +53,7 @@ extension NSInputStreamStreamExtension on Stream> { dataSubscription.resume(); } }, onDone: () { - print("NSInputStream: 4"); + print('NSInputStream: 4'); dataSubscription.cancel(); }); diff --git a/pkgs/objective_c/src/input_stream_adapter.m b/pkgs/objective_c/src/input_stream_adapter.m index 5260ae1ba..cd4ebc42b 100644 --- a/pkgs/objective_c/src/input_stream_adapter.m +++ b/pkgs/objective_c/src/input_stream_adapter.m @@ -14,7 +14,7 @@ @implementation DartInputStreamAdapter { NSStreamStatus _status; BOOL _done; NSError *_error; - id __weak _delegate; + // id __weak _delegate; } + (instancetype)inputStreamWithPort:(Dart_Port)sendPort { @@ -28,7 +28,7 @@ + (instancetype)inputStreamWithPort:(Dart_Port)sendPort { stream->_error = nil; // From https://developer.apple.com/documentation/foundation/nsstream: // "...by a default, a stream object must be its own delegate..." - stream->_delegate = stream; + // stream->_delegate = stream; } return stream; } @@ -88,18 +88,18 @@ - (BOOL)setProperty:(id)property forKey:(NSStreamPropertyKey)key { } - (id)delegate { - return _delegate; + return self; } - (void)setDelegate:(id)delegate { // From https://developer.apple.com/documentation/foundation/nsstream: // "...so a delegate message with an argument of nil should restore this // delegate..." - if (delegate == nil) { - _delegate = self; - } else { - _delegate = delegate; - } + // if (delegate == nil) { + // _delegate = self; + // } else { + // _delegate = delegate; + // } } - (NSError *)streamError { @@ -160,10 +160,10 @@ - (BOOL)hasBytesAvailable { #pragma mark - NSStreamDelegate - (void)stream:(NSStream *)theStream handleEvent:(NSStreamEvent)streamEvent { - id delegate = _delegate; - if (delegate != self) { - [delegate stream:self handleEvent:streamEvent]; - } + // id delegate = _delegate; + // if (delegate != self) { + // [delegate stream:self handleEvent:streamEvent]; + // } } @end diff --git a/pkgs/objective_c/test/ns_input_stream_test.dart b/pkgs/objective_c/test/ns_input_stream_test.dart index f44885acb..30c055f7f 100644 --- a/pkgs/objective_c/test/ns_input_stream_test.dart +++ b/pkgs/objective_c/test/ns_input_stream_test.dart @@ -284,7 +284,7 @@ void main() { [1, 2, 3], ]).toNSInputStream() as DartInputStreamAdapter; - expect(inputStream.delegate, inputStream); + // expect(inputStream.delegate, inputStream); final ptr = inputStream.ref.pointer; expect(objectRetainCount(ptr), greaterThan(0)); @@ -320,7 +320,7 @@ void main() { ]).toNSInputStream() as DartInputStreamAdapter; inputStream.delegate = NSObject.new1(); - expect(inputStream.delegate, isNot(inputStream)); + // expect(inputStream.delegate, isNot(inputStream)); final ptr = inputStream.ref.pointer; expect(objectRetainCount(ptr), greaterThan(0)); diff --git a/pkgs/objective_c/test/util.dart b/pkgs/objective_c/test/util.dart index 4ad7649cd..7db7e1e0a 100644 --- a/pkgs/objective_c/test/util.dart +++ b/pkgs/objective_c/test/util.dart @@ -5,8 +5,9 @@ // TODO: Should we share this with ffigen and move it to an unpublished util // package in this repo? +// ignore_for_file: avoid_catching_errors + import 'dart:ffi'; -import 'dart:io'; import 'package:ffi/ffi.dart'; import 'package:objective_c/objective_c.dart';