From b7fc7847188a64ff35500b63ef45da1b1d71819e Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Thu, 21 Mar 2002 21:16:26 +0000 Subject: [PATCH] add dstring_appendsubstr --- include/QF/dstring.h | 1 + libs/util/dstring.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/include/QF/dstring.h b/include/QF/dstring.h index e43bb1055..0f03f720a 100644 --- a/include/QF/dstring.h +++ b/include/QF/dstring.h @@ -52,6 +52,7 @@ void dstring_clear (dstring_t *dstr); // String-specific functions dstring_t *dstring_newstr (void); void dstring_appendstr (dstring_t *dstr, const char *str); +void dstring_appendsubstr (dstring_t *dstr, const char *str, unsigned int len); void dstring_insertstr (dstring_t *dstr, const char *str, unsigned int pos); void dstring_clearstr (dstring_t *dstr); diff --git a/libs/util/dstring.c b/libs/util/dstring.c index 0ebeb2673..1914c857b 100644 --- a/libs/util/dstring.c +++ b/libs/util/dstring.c @@ -123,6 +123,15 @@ dstring_appendstr (dstring_t *dstr, const char *str) { strcat(dstr->str, str); } +void +dstring_appendsubstr (dstring_t *dstr, const char *str, unsigned int len) { + if (len > strlen (str)) + len = strlen (str); + dstr->size += len; + dstring_adjust(dstr); + strncat(dstr->str, str, len); +} + void dstring_insertstr (dstring_t *dstr, const char *str, unsigned int pos) {