You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unlike C-style strings, std::strings can contain the null character. For example std::string("hello\0world").
However, in BLERemoteCharacteristic.cpp, the std::string newValue is converted to a C-style string before being sent to writeValue. This means that any characters after a null character in newValue will not be sent to writeValue. For example, std::string("hello\0world") will be converted into the C-style/null-terminated string "hello\0".
A fix would be to use the data() method on std::string and, more importantly, the length() method on std::string. newValue.length() will give the total length of the string (including any null characters), however strlen will only return the length up to the first null character.