diff --git a/dynstring.c b/dynstring.c index 873d076d..204c0463 100644 --- a/dynstring.c +++ b/dynstring.c @@ -280,3 +280,16 @@ int DynStringBackspace(pDynString self) } return 1; } +/*---------------------------------------------------------------------------*/ +char *Dyn2Cstring(pDynString self) { + char *result; + + assert(self); + assert(self->iMAGIC == DYNMAGIC); + + result = self->pBuffer; + + free(self); + + return result; +} diff --git a/dynstring.h b/dynstring.h index d61694de..8ac7e1dc 100644 --- a/dynstring.h +++ b/dynstring.h @@ -96,4 +96,8 @@ int DynStringBackspace(pDynString self); /* removes one character at the end from the dynstring */ +char *Dyn2Cstring(pDynString self); + /* + convert to C string and delete dynstring. The result must be freed when no longer used. + */ #endif