…throw at the end of a Buffer's boundary. I was really on the fence about this. But in the end, it was either this, or adding a "resize()"/"reinterpret()" function that would return a new Buffer instance at the same memory address with a specified size. Then the JS impl of readCString() would use it when it got to the boundary. So.. yuck... In retrospect, a "resize()"/"reinterpret()" function will probably inevitably be needed at some point.