From be0b3867c73544fb849085ba03126789470aaf07 Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Thu, 8 May 2003 23:05:39 +0000 Subject: [PATCH] add dstring_copy and dstring_copystr to make dstring init easier --- include/QF/dstring.h | 2 ++ libs/util/dstring.c | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/include/QF/dstring.h b/include/QF/dstring.h index 9e0251fdf..e121fdfbb 100644 --- a/include/QF/dstring.h +++ b/include/QF/dstring.h @@ -41,6 +41,7 @@ typedef struct dstring_s { dstring_t *dstring_new(void); void dstring_delete (dstring_t *dstr); void dstring_adjust (dstring_t *dstr); +void dstring_copy (dstring_t *dstr, const char *data, unsigned int len); void dstring_append (dstring_t *dstr, const char *data, unsigned int len); void dstring_insert (dstring_t *dstr, unsigned int pos, const char *data, unsigned int len); @@ -52,6 +53,7 @@ char *dstring_freeze (dstring_t *dstr); // String-specific functions dstring_t *dstring_newstr (void); +void dstring_copystr (dstring_t *dstr, const char *str); 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, unsigned int pos, const char *str); diff --git a/libs/util/dstring.c b/libs/util/dstring.c index ede833990..fde9a302f 100644 --- a/libs/util/dstring.c +++ b/libs/util/dstring.c @@ -70,6 +70,14 @@ dstring_adjust (dstring_t *dstr) } } +void +dstring_copy (dstring_t *dstr, const char *data, unsigned int len) +{ + dstr->size = len; + dstring_adjust (dstr); + memcpy (dstr->str, data, len); +} + void dstring_append (dstring_t *dstr, const char *data, unsigned int len) { @@ -149,6 +157,14 @@ dstring_newstr (void) return new; } +void +dstring_copystr (dstring_t *dstr, const char *str) +{ + dstr->size = strlen (str) + 1; + dstring_adjust (dstr); + strcpy (dstr->str, str); +} + void dstring_appendstr (dstring_t *dstr, const char *str) {