diff --git a/Sources/XXClient/Callbacks/TrackServicesCallback.swift b/Sources/XXClient/Callbacks/TrackServicesCallback.swift index df3043bb2a90252e85dc8181fcd3e7f5d6c6265a..44a8c5ff214855cc96c6e9b9cdc12d2c0ec49190 100644 --- a/Sources/XXClient/Callbacks/TrackServicesCallback.swift +++ b/Sources/XXClient/Callbacks/TrackServicesCallback.swift @@ -2,11 +2,11 @@ import Bindings import XCTestDynamicOverlay public struct TrackServicesCallback { - public init(handle: @escaping (Result<Data, Error>) -> Void) { + public init(handle: @escaping (Result<[TrackServicesCallbackResult], Error>) -> Void) { self.handle = handle } - public var handle: (Result<Data, Error>) -> Void + public var handle: (Result<[TrackServicesCallbackResult], Error>) -> Void } extension TrackServicesCallback { @@ -30,7 +30,11 @@ extension TrackServicesCallback { return } if let marshalData = marshalData { - callback.handle(.success(marshalData)) + do { + callback.handle(.success(try [TrackServicesCallbackResult].decode(marshalData))) + } catch { + callback.handle(.failure(error)) + } return } fatalError("BindingsTrackServicesCallback received nil marshalData and err")