Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zenoh-C z_slice and z_bytes types compatibility #417

Merged
merged 24 commits into from
Jun 13, 2024
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
7fcb672
feat: renaming z_bytes to z_slice
jean-roland Jun 10, 2024
adbf331
feat: use z_slice accessors in examples
jean-roland Jun 10, 2024
598ee96
fix: remove z_bytes_wrap
jean-roland Jun 10, 2024
ffd898d
feat: rename _z_bytes_ to _z_slice
jean-roland Jun 10, 2024
d91c1a1
feat: rename collections/bytes to slice
jean-roland Jun 10, 2024
039b9c1
feat: return of z_bytes
jean-roland Jun 10, 2024
3ee0c77
feat: switch encode functions from slice to bytes
jean-roland Jun 11, 2024
c2f249e
feat: add query null function
jean-roland Jun 11, 2024
7ac59d2
feat: add z_bytes macro
jean-roland Jun 11, 2024
ed613b7
feat: use _z_bytes_t in value and sample
jean-roland Jun 11, 2024
c1e8c80
feat: update tests and examples
jean-roland Jun 11, 2024
2169b2d
fix: bad value initialization function
jean-roland Jun 11, 2024
d9d02f1
doc: update doc
jean-roland Jun 11, 2024
2e98a6d
feat: add bytes encode/decode functions
jean-roland Jun 11, 2024
a5908a6
fix: update examples
jean-roland Jun 12, 2024
a429056
doc: update doc
jean-roland Jun 12, 2024
2bcd26e
fix: simplify bytes array / float conversion
jean-roland Jun 12, 2024
8a4ed13
fix: payload lifetime issue
jean-roland Jun 12, 2024
2eb4516
fix: rework int encoding functions
jean-roland Jun 12, 2024
5d828a5
fix: missing macros
jean-roland Jun 12, 2024
fd91be9
fix: double free when using decode into slice
jean-roland Jun 12, 2024
8c55936
feat: remove bytes_len/data, add string_len
jean-roland Jun 12, 2024
010d432
fix: update tests & examples
jean-roland Jun 12, 2024
2dbc855
doc: comment typo
jean-roland Jun 12, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 38 additions & 3 deletions docs/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,14 @@ Owned Types

TODO: owned type description

.. c:type:: z_owned_bytes_t
.. c:type:: z_owned_slice_t

Represents an array of bytes.

.. c:type:: z_owned_bytes_t

Represents an array of bytes container.

.. c:type:: z_owned_string_t

Represents a string without null-terminator.
Expand Down Expand Up @@ -130,10 +134,14 @@ Loaned Types

TODO: loaned type description

.. c:type:: z_loaned_bytes_t
.. c:type:: z_loaned_slice_t

Represents an array of bytes.

.. c:type:: z_loaned_bytes_t

Represents an array of bytes container.

.. c:type:: z_loaned_string_t

Represents a string without null-terminator.
Expand Down Expand Up @@ -250,7 +258,7 @@ Macros
Primitives
~~~~~~~~~~

.. autocfunction:: primitives.h::z_view_str_wrap
.. autocfunction:: primitives.h::z_view_string_wrap
.. autocfunction:: primitives.h::z_view_keyexpr_from_string
.. autocfunction:: primitives.h::z_view_keyexpr_from_string_unchecked
.. autocfunction:: primitives.h::z_keyexpr_to_string
Expand Down Expand Up @@ -282,9 +290,36 @@ Primitives
.. autocfunction:: primitives.h::z_encoding_move
.. autocfunction:: primitives.h::z_encoding_null
.. autocfunction:: primitives.h::z_value_payload
.. autocfunction:: primitives.h::z_slice_data
.. autocfunction:: primitives.h::z_slice_len
.. autocfunction:: primitives.h::z_bytes_data
.. autocfunction:: primitives.h::z_bytes_len
.. autocfunction:: primitives.h::z_bytes_decode_into_int8
.. autocfunction:: primitives.h::z_bytes_decode_into_int16
.. autocfunction:: primitives.h::z_bytes_decode_into_int32
.. autocfunction:: primitives.h::z_bytes_decode_into_int64
.. autocfunction:: primitives.h::z_bytes_decode_into_uint8
.. autocfunction:: primitives.h::z_bytes_decode_into_uint16
.. autocfunction:: primitives.h::z_bytes_decode_into_uint32
.. autocfunction:: primitives.h::z_bytes_decode_into_uint64
.. autocfunction:: primitives.h::z_bytes_decode_into_float
.. autocfunction:: primitives.h::z_bytes_decode_into_double
.. autocfunction:: primitives.h::z_bytes_decode_into_slice
.. autocfunction:: primitives.h::z_bytes_decode_into_string
.. autocfunction:: primitives.h::z_bytes_encode_from_int8
.. autocfunction:: primitives.h::z_bytes_encode_from_int16
.. autocfunction:: primitives.h::z_bytes_encode_from_int32
.. autocfunction:: primitives.h::z_bytes_encode_from_int64
.. autocfunction:: primitives.h::z_bytes_encode_from_uint8
.. autocfunction:: primitives.h::z_bytes_encode_from_uint16
.. autocfunction:: primitives.h::z_bytes_encode_from_uint32
.. autocfunction:: primitives.h::z_bytes_encode_from_uint64
.. autocfunction:: primitives.h::z_bytes_encode_from_float
.. autocfunction:: primitives.h::z_bytes_encode_from_double
.. autocfunction:: primitives.h::z_bytes_encode_from_slice
.. autocfunction:: primitives.h::z_bytes_encode_from_slice_copy
.. autocfunction:: primitives.h::z_bytes_encode_from_string
.. autocfunction:: primitives.h::z_bytes_encode_from_string_copy
.. autocfunction:: primitives.h::z_timestamp_check
.. autocfunction:: primitives.h::z_query_target_default
.. autocfunction:: primitives.h::z_query_consolidation_auto
Expand Down
6 changes: 2 additions & 4 deletions examples/arduino/z_get.ino
Original file line number Diff line number Diff line change
Expand Up @@ -116,11 +116,9 @@ void loop() {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (strcmp(VALUE, "") != 0) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, VALUE);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_view_string_loan(&value_str));
z_bytes_encode_from_string(&payload, VALUE);
opts.payload = &payload;
}
z_owned_closure_reply_t callback;
Expand Down
4 changes: 1 addition & 3 deletions examples/arduino/z_queryable.ino
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,8 @@ void query_handler(const z_loaned_query_t *query, void *arg) {
z_view_keyexpr_from_string_unchecked(&ke, KEYEXPR);

// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, VALUE);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_view_string_loan(&reply_str));
z_bytes_encode_from_string(&reply_payload, VALUE);

z_query_reply(query, z_view_keyexpr_loan(&ke), z_bytes_move(&reply_payload), NULL);

Expand Down
3 changes: 2 additions & 1 deletion examples/arduino/z_sub.ino
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@
void data_handler(const z_loaned_sample_t *sample, void *arg) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
std::string val((const char *)z_sample_payload(sample)->start, z_sample_payload(sample)->len);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
std::string val((const char *)z_bytes_data(payload), z_bytes_len(payload));
jean-roland marked this conversation as resolved.
Show resolved Hide resolved

Serial.print(" >> [Subscription listener] Received (");
Serial.print(z_string_data(z_string_loan(&keystr)));
Expand Down
6 changes: 2 additions & 4 deletions examples/espidf/z_get.c
Original file line number Diff line number Diff line change
Expand Up @@ -163,11 +163,9 @@ void app_main() {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (strcmp(VALUE, "") != 0) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, VALUE);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_loan(value_str));
z_bytes_encode_from_string(&payload, VALUE);
opts.payload = &payload;
}
z_owned_closure_reply_t callback;
Expand Down
4 changes: 1 addition & 3 deletions examples/espidf/z_queryable.c
Original file line number Diff line number Diff line change
Expand Up @@ -120,10 +120,8 @@ void query_handler(const z_loaned_query_t *query, void *ctx) {
z_view_keyexpr_t ke;
z_view_keyexpr_from_string_unchecked(&ke, KEYEXPR);
// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, VALUE);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_loan(reply_str));
z_bytes_encode_from_string(&reply_payload, VALUE);

z_query_reply(query, z_loan(ke), z_move(reply_payload), NULL);
z_drop(z_move(keystr));
Expand Down
2 changes: 1 addition & 1 deletion examples/espidf/z_sub.c
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ void data_handler(const z_loaned_sample_t* sample, void* arg) {
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t* payload = z_sample_payload(sample);
printf(" >> [Subscriber handler] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)),
(int)payload->len, payload->start);
(int)z_bytes_len(payload), z_bytes_data(payload));
z_string_drop(z_string_move(&keystr));
}

Expand Down
6 changes: 2 additions & 4 deletions examples/freertos_plus_tcp/z_get.c
Original file line number Diff line number Diff line change
Expand Up @@ -87,11 +87,9 @@ void app_main(void) {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (strcmp(VALUE, "") != 0) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, VALUE);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_loan(value_str));
z_bytes_encode_from_string(&payload, VALUE);
opts.payload = &payload;
}
z_owned_closure_reply_t callback;
Expand Down
4 changes: 1 addition & 3 deletions examples/freertos_plus_tcp/z_queryable.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,8 @@ void query_handler(const z_loaned_query_t *query, void *ctx) {
z_query_reply_options_t options;
z_query_reply_options_default(&options);
// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, VALUE);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_loan(reply_str));
z_bytes_encode_from_string(&reply_payload, VALUE);

z_query_reply(query, z_query_keyexpr(query), z_move(reply_payload), &options);
z_drop(z_move(keystr));
Expand Down
4 changes: 2 additions & 2 deletions examples/freertos_plus_tcp/z_sub.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ void data_handler(const z_loaned_sample_t *sample, void *ctx) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
z_drop(z_move(keystr));
}

Expand Down
4 changes: 2 additions & 2 deletions examples/freertos_plus_tcp/z_sub_st.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ void data_handler(const z_loaned_sample_t *sample, void *ctx) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
z_drop(z_move(keystr));
z_drop(z_move(keystr));
msg_nb++;
Expand Down
6 changes: 2 additions & 4 deletions examples/mbed/z_get.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -84,11 +84,9 @@ int main(int argc, char **argv) {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (strcmp(VALUE, "") != 0) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, VALUE);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_view_string_loan(&value_str));
z_bytes_encode_from_string(&payload, VALUE);
opts.payload = &payload;
}
z_owned_closure_reply_t callback;
Expand Down
4 changes: 1 addition & 3 deletions examples/mbed/z_queryable.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,8 @@ void query_handler(const z_loaned_query_t *query, void *ctx) {
z_string_drop(z_string_move(&payload_string));
}
// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, VALUE);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_view_string_loan(&reply_str));
z_bytes_encode_from_string(&reply_payload, VALUE);

z_query_reply(query, z_query_keyexpr(query), z_bytes_move(&reply_payload), NULL);
z_string_drop(z_string_move(&keystr));
Expand Down
2 changes: 1 addition & 1 deletion examples/mbed/z_sub.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ void data_handler(const z_loaned_sample_t *sample, void *arg) {
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(" >> [Subscriber handler] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)),
(int)payload->len, payload->start);
(int)z_bytes_len(payload), z_bytes_data(payload));
z_string_drop(z_string_move(&keystr));
}

Expand Down
8 changes: 3 additions & 5 deletions examples/unix/c11/z_get.c
Original file line number Diff line number Diff line change
Expand Up @@ -134,12 +134,10 @@ int main(int argc, char **argv) {
printf("Sending Query '%s'...\n", keyexpr);
z_get_options_t opts;
z_get_options_default(&opts);

// Value encoding
z_owned_bytes_t payload;
if (value != NULL) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, value);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_loan(value_str));
z_bytes_encode_from_string(&payload, value);
opts.payload = &payload;
}
#if Z_FEATURE_ATTACHMENT == 1
Expand Down
6 changes: 2 additions & 4 deletions examples/unix/c11/z_get_channel.c
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,9 @@ int main(int argc, char **argv) {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (value != NULL) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, value);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_loan(value_str));
z_bytes_encode_from_string(&payload, value);
opts.payload = &payload;
}
z_owned_reply_ring_channel_t channel;
Expand Down
2 changes: 1 addition & 1 deletion examples/unix/c11/z_pong.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
void callback(const z_loaned_sample_t* sample, void* context) {
const z_loaned_publisher_t* pub = z_loan(*(z_owned_publisher_t*)context);
const z_loaned_bytes_t* payload = z_sample_payload(sample);
z_publisher_put(pub, payload->start, payload->len, NULL);
z_publisher_put(pub, z_bytes_data(payload), z_bytes_len(payload), NULL);
}
void drop(void* context) {
z_owned_publisher_t* pub = (z_owned_publisher_t*)context;
Expand Down
5 changes: 3 additions & 2 deletions examples/unix/c11/z_pull.c
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,9 @@ int main(int argc, char **argv) {
for (z_call(channel.try_recv, &sample); z_check(sample); z_call(channel.try_recv, &sample)) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(z_loan(sample)), &keystr);
printf(">> [Subscriber] Pulled ('%s': '%.*s')\n", z_string_data(z_loan(keystr)),
(int)z_sample_payload(z_loan(sample))->len, z_sample_payload(z_loan(sample))->start);
const z_loaned_bytes_t *payload = z_sample_payload(z_loan(sample));
printf(">> [Subscriber] Pulled ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
z_drop(z_move(keystr));
z_drop(z_move(sample));
}
Expand Down
4 changes: 1 addition & 3 deletions examples/unix/c11/z_queryable.c
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,8 @@ void query_handler(const z_loaned_query_t *query, void *ctx) {
#endif

// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, value);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_loan(reply_str));
z_bytes_encode_from_string(&reply_payload, value);

z_query_reply(query, z_query_keyexpr(query), z_move(reply_payload), &options);
z_drop(z_move(keystr));
Expand Down
4 changes: 1 addition & 3 deletions examples/unix/c11/z_queryable_channel.c
Original file line number Diff line number Diff line change
Expand Up @@ -116,10 +116,8 @@ int main(int argc, char **argv) {
z_query_reply_options_t options;
z_query_reply_options_default(&options);
// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, value);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_loan(reply_str));
z_bytes_encode_from_string(&reply_payload, value);

z_query_reply(q, z_query_keyexpr(q), z_move(reply_payload), &options);
z_drop(z_move(keystr));
Expand Down
4 changes: 2 additions & 2 deletions examples/unix/c11/z_sub.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ void data_handler(const z_loaned_sample_t *sample, void *ctx) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
#if Z_FEATURE_ATTACHMENT == 1
z_attachment_t attachment = z_sample_attachment(sample);
if (z_attachment_check(&attachment)) {
Expand Down
5 changes: 3 additions & 2 deletions examples/unix/c11/z_sub_channel.c
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,9 @@ int main(int argc, char **argv) {
for (z_call(channel.recv, &sample); z_check(sample); z_call(channel.recv, &sample)) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(z_loan(sample)), &keystr);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)),
(int)z_sample_payload(z_loan(sample))->len, z_sample_payload(z_loan(sample))->start);
const z_loaned_bytes_t *payload = z_sample_payload(z_loan(sample));
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
z_drop(z_move(keystr));
z_drop(z_move(sample));
z_null(&sample);
Expand Down
4 changes: 2 additions & 2 deletions examples/unix/c11/z_sub_st.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ void data_handler(const z_loaned_sample_t *sample, void *ctx) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_loan(keystr)), (int)z_bytes_len(payload),
z_bytes_data(payload));
z_drop(z_move(keystr));
msg_nb++;
}
Expand Down
6 changes: 2 additions & 4 deletions examples/unix/c99/z_get.c
Original file line number Diff line number Diff line change
Expand Up @@ -122,11 +122,9 @@ int main(int argc, char **argv) {
z_get_options_t opts;
z_get_options_default(&opts);
// Value encoding
z_owned_bytes_t payload;
if (value != NULL) {
z_view_string_t value_str;
z_view_string_wrap(&value_str, value);
z_owned_bytes_t payload;
z_bytes_encode_from_string(&payload, z_view_string_loan(&value_str));
z_bytes_encode_from_string(&payload, value);
opts.payload = &payload;
}
z_owned_closure_reply_t callback;
Expand Down
2 changes: 1 addition & 1 deletion examples/unix/c99/z_pong.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
void callback(const z_loaned_sample_t* sample, void* context) {
const z_loaned_publisher_t* pub = z_publisher_loan((z_owned_publisher_t*)context);
const z_loaned_bytes_t* payload = z_sample_payload(sample);
z_publisher_put(pub, payload->start, payload->len, NULL);
z_publisher_put(pub, z_bytes_data(payload), z_bytes_len(payload), NULL);
}
void drop(void* context) {
z_owned_publisher_t* pub = (z_owned_publisher_t*)context;
Expand Down
4 changes: 1 addition & 3 deletions examples/unix/c99/z_queryable.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,8 @@ void query_handler(const z_loaned_query_t *query, void *ctx) {
z_query_reply_options_default(&options);
options.encoding = z_encoding_move(&encoding);
// Reply value encoding
z_view_string_t reply_str;
z_view_string_wrap(&reply_str, value);
z_owned_bytes_t reply_payload;
z_bytes_encode_from_string(&reply_payload, z_view_string_loan(&reply_str));
z_bytes_encode_from_string(&reply_payload, value);

z_query_reply(query, z_query_keyexpr(query), z_bytes_move(&reply_payload), &options);
z_string_drop(z_string_move(&keystr));
Expand Down
4 changes: 2 additions & 2 deletions examples/unix/c99/z_sub.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ void data_handler(const z_loaned_sample_t *sample, void *arg) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)),
(int)z_bytes_len(payload), z_bytes_data(payload));
z_string_drop(z_string_move(&keystr));
}

Expand Down
4 changes: 2 additions & 2 deletions examples/unix/c99/z_sub_st.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ void data_handler(const z_loaned_sample_t *sample, void *arg) {
z_owned_string_t keystr;
z_keyexpr_to_string(z_sample_keyexpr(sample), &keystr);
const z_loaned_bytes_t *payload = z_sample_payload(sample);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)), (int)payload->len,
payload->start);
printf(">> [Subscriber] Received ('%s': '%.*s')\n", z_string_data(z_string_loan(&keystr)),
(int)z_bytes_len(payload), z_bytes_data(payload));
z_string_drop(z_string_move(&keystr));
msg_nb++;
}
Expand Down
Loading
Loading