# HG changeset patch # User František Kučera # Date 1650733691 -7200 # Node ID f2f2b81079a52dc876e66e63350fa6d60d46a45c # Parent b26e9b224fbef925bb5628457a1622361270a481 comment on null bytes 0x00 in the Streamlet protocol diff -r b26e9b224fbe -r f2f2b81079a5 nbproject/configurations.xml --- a/nbproject/configurations.xml Sat Dec 04 21:14:49 2021 +0100 +++ b/nbproject/configurations.xml Sat Apr 23 19:08:11 2022 +0200 @@ -167,6 +167,12 @@ perm="755" owner="root" group="bin"/> + diff -r b26e9b224fbe -r f2f2b81079a5 src/SubProcess.cpp --- a/src/SubProcess.cpp Sat Dec 04 21:14:49 2021 +0100 +++ b/src/SubProcess.cpp Sat Apr 23 19:08:11 2022 +0200 @@ -55,6 +55,7 @@ } void write(string_t s) { + // if the value contains a null byte 0x00, it will be trimmed (passing 0x00 through would break the protocol) subInputWriter << convertor.to_bytes(s).c_str(); subInputWriter.put(SEPARATOR); if (subInputWriter.bad()) throw SubProcess::Exception(L"Unable to write to sub-process."); diff -r b26e9b224fbe -r f2f2b81079a5 streamlet-examples/streamlet-common.h --- a/streamlet-examples/streamlet-common.h Sat Dec 04 21:14:49 2021 +0100 +++ b/streamlet-examples/streamlet-common.h Sat Apr 23 19:08:11 2022 +0200 @@ -75,6 +75,7 @@ } void writeString(std::wstring s) { + // if the value contains a null byte 0x00, it will be trimmed (passing 0x00 through would break the protocol) std::cout << convertor.to_bytes(s.c_str()); std::cout.put(SEPARATOR); if (std::cout.bad()) throw std::runtime_error("Unable to write to sub-process.");