since we have an advertised string length (```c_length```), maybe we ought to use ```strndup()``` instead, just to be "safe[er]"?  Or, maybe better still is just another memcpy...?