diff --git a/src/m_tokenizer.c b/src/m_tokenizer.c index 18569b24edc0c29db50ff2c488de772875664009..e1310f98f062c6ae338637c88a510c3424015b85 100644 --- a/src/m_tokenizer.c +++ b/src/m_tokenizer.c @@ -15,8 +15,10 @@ tokenizer_t *Tokenizer_Open(const char *inputString, size_t len, unsigned numTokens) { tokenizer_t *tokenizer = Z_Malloc(sizeof(tokenizer_t), PU_STATIC, NULL); + const size_t lenpan = len+1; - tokenizer->zdup = malloc(len); + tokenizer->zdup = malloc(lenpan); + tokenizer->zdup[len] = 0x00; tokenizer->input = M_Memcpy(tokenizer->zdup, inputString, len); tokenizer->startPos = 0; diff --git a/src/m_tokenizer.h b/src/m_tokenizer.h index 013a310e8fa20144e3c23d57a7aed962d8ae2245..7ee856b3c9331d8dbb0b97711bd5e8bcae7ec2e7 100644 --- a/src/m_tokenizer.h +++ b/src/m_tokenizer.h @@ -16,7 +16,7 @@ typedef struct Tokenizer { - void *zdup; + char *zdup; const char *input; unsigned numTokens; UINT32 *capacity;