diff --git a/examples/chip-tool/gen/CHIPClustersObjc.mm b/examples/chip-tool/gen/CHIPClustersObjc.mm index e6f2c8eae4cfa8..dc439dadcc29c8 100644 --- a/examples/chip-tool/gen/CHIPClustersObjc.mm +++ b/examples/chip-tool/gen/CHIPClustersObjc.mm @@ -104,16 +104,15 @@ static void CallbackFn(void * context, uint8_t status) static void CallbackFn(void * context, chip::ByteSpan value) { + NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; + CHIPStringAttributeCallbackBridge * callback = reinterpret_cast(context); if (callback && callback->mQueue) { dispatch_async(callback->mQueue, ^{ if (callback->mOctetString) { - NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; callback->mHandler(nil, @ { @"value" : data }); } else { - NSString * str = [[NSString alloc] initWithBytes:value.data() - length:value.size() - encoding:NSUTF8StringEncoding]; + NSString * str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; callback->mHandler(nil, @ { @"value" : str }); } diff --git a/src/app/zap-templates/templates/app/CHIPClustersObjc-src.zapt b/src/app/zap-templates/templates/app/CHIPClustersObjc-src.zapt index 82bb71680a5718..52de41c0548053 100644 --- a/src/app/zap-templates/templates/app/CHIPClustersObjc-src.zapt +++ b/src/app/zap-templates/templates/app/CHIPClustersObjc-src.zapt @@ -88,17 +88,18 @@ public: static void CallbackFn(void * context, chip::ByteSpan value) { + NSData * data = [NSData dataWithBytes: value.data() length: value.size()]; + CHIPStringAttributeCallbackBridge * callback = reinterpret_cast(context); if (callback && callback->mQueue) { dispatch_async(callback->mQueue, ^{ if (callback->mOctetString) { - NSData *data = [NSData dataWithBytes: value.data() length: value.size()]; callback->mHandler(nil, @{ @"value": data }); } else { - NSString * str = [[NSString alloc] initWithBytes:value.data() length:value.size() encoding:NSUTF8StringEncoding]; + NSString * str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; callback->mHandler(nil, @{ @"value": str }); } diff --git a/src/controller/python/gen/CHIPClustersObjc.mm b/src/controller/python/gen/CHIPClustersObjc.mm index 4eb235e195872e..b9125119350285 100644 --- a/src/controller/python/gen/CHIPClustersObjc.mm +++ b/src/controller/python/gen/CHIPClustersObjc.mm @@ -104,16 +104,15 @@ static void CallbackFn(void * context, uint8_t status) static void CallbackFn(void * context, chip::ByteSpan value) { + NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; + CHIPStringAttributeCallbackBridge * callback = reinterpret_cast(context); if (callback && callback->mQueue) { dispatch_async(callback->mQueue, ^{ if (callback->mOctetString) { - NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; callback->mHandler(nil, @ { @"value" : data }); } else { - NSString * str = [[NSString alloc] initWithBytes:value.data() - length:value.size() - encoding:NSUTF8StringEncoding]; + NSString * str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; callback->mHandler(nil, @ { @"value" : str }); } diff --git a/src/darwin/Framework/CHIP/gen/CHIPClustersObjc.mm b/src/darwin/Framework/CHIP/gen/CHIPClustersObjc.mm index 1c21cbcf9485d8..29e4339c74cd60 100644 --- a/src/darwin/Framework/CHIP/gen/CHIPClustersObjc.mm +++ b/src/darwin/Framework/CHIP/gen/CHIPClustersObjc.mm @@ -104,16 +104,15 @@ static void CallbackFn(void * context, uint8_t status) static void CallbackFn(void * context, chip::ByteSpan value) { + NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; + CHIPStringAttributeCallbackBridge * callback = reinterpret_cast(context); if (callback && callback->mQueue) { dispatch_async(callback->mQueue, ^{ if (callback->mOctetString) { - NSData * data = [NSData dataWithBytes:value.data() length:value.size()]; callback->mHandler(nil, @ { @"value" : data }); } else { - NSString * str = [[NSString alloc] initWithBytes:value.data() - length:value.size() - encoding:NSUTF8StringEncoding]; + NSString * str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; callback->mHandler(nil, @ { @"value" : str }); }