X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=ucw%2Fmempool-str.c;h=9391cbb6eb1db3b8739d74ed364a5a619c7c71bb;hb=f17e4350dcf0c033891e52b30b0c32a4a4fed5e0;hp=cb2466304a902147f7be3b52fd028257ba06a2d1;hpb=a50ec82cb8c6fe468b8e819c0426f5c8b5268f78;p=libucw.git diff --git a/ucw/mempool-str.c b/ucw/mempool-str.c index cb246630..9391cbb6 100644 --- a/ucw/mempool-str.c +++ b/ucw/mempool-str.c @@ -7,8 +7,8 @@ * of the GNU Lesser General Public License. */ -#include "ucw/lib.h" -#include "ucw/mempool.h" +#include +#include #include #include @@ -85,6 +85,15 @@ mp_strjoin(struct mempool *p, char **a, uns n, uns sep) return dest; } +char * +mp_str_from_mem(struct mempool *a, const void *mem, uns len) +{ + char *str = mp_alloc_noalign(a, len+1); + memcpy(str, mem, len); + str[len] = 0; + return str; +} + #ifdef TEST #include @@ -98,6 +107,7 @@ int main(void) char *a[] = { "bugs", "gnats", "insects" }; puts(mp_strjoin(p, a, 3, '.')); puts(mp_strjoin(p, a, 3, 0)); + puts(mp_str_from_mem(p, s+1, 2)); return 0; }