Skip to content

Commit 76148d2

Browse files
authored
Handle null characters in topic in BaseProducer::send (#782)
1 parent eb4270c commit 76148d2

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

src/producer/base_producer.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -456,7 +456,10 @@ where
456456
}
457457
let (payload_ptr, payload_len) = as_bytes(record.payload);
458458
let (key_ptr, key_len) = as_bytes(record.key);
459-
let topic_cstring = CString::new(record.topic).unwrap();
459+
let topic_cstring = match CString::new(record.topic) {
460+
Ok(topic) => topic,
461+
Err(nul_error) => return Err((nul_error.into(), record)),
462+
};
460463
let opaque_ptr = record.delivery_opaque.into_ptr();
461464
let produce_error = unsafe {
462465
rdsys::rd_kafka_producev(

0 commit comments

Comments
 (0)