diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-03-19 19:55:58 +0100 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2018-03-19 19:55:58 +0100 |
commit | d1a8285f818eb7e5c3d6a05709ea21a808490b8c (patch) | |
tree | 326578f0505cbed07cfe60de530022822dc237ac /app/dynstring | |
parent | 16e9630b79f0a7a90c6cedb6781175bb8b337dc1 (diff) |
New upstream version 5.1.0upstream/5.1.0
Diffstat (limited to 'app/dynstring')
-rw-r--r-- | app/dynstring/dynstring.c | 10 | ||||
-rw-r--r-- | app/dynstring/dynstring.h | 26 |
2 files changed, 30 insertions, 6 deletions
diff --git a/app/dynstring/dynstring.c b/app/dynstring/dynstring.c index 6f3159c..eb7b2c5 100644 --- a/app/dynstring/dynstring.c +++ b/app/dynstring/dynstring.c @@ -30,7 +30,7 @@ size_t DynStringSize(DynString *s) } /* An initialized empty struct string */ -#define STRINIT() (DynStringMalloc(16)) +#define STRINIT(s) (DynStringMalloc(s, 16)) /** * Allocate memory for a string of the desired length. To optimize memory usage @@ -430,10 +430,10 @@ void DynStringPrintf(DynString *s, const char *fmt, ...) size_t len; DynString nas = NaS; - ///* Are we not a string? */ - //if (isnas(s)) { - // *s = STRINIT(); - //} + /* Are we not a string? */ + if (isnas(s)) { + STRINIT(s); + } /* Nothing to do? */ if (!fmt) { diff --git a/app/dynstring/dynstring.h b/app/dynstring/dynstring.h index d6fac51..2a18409 100644 --- a/app/dynstring/dynstring.h +++ b/app/dynstring/dynstring.h @@ -1,13 +1,37 @@ +/** \file dynstring.h +* Definitions and prototypes for variable length strings +*/ + +/* XTrkCad - Model Railroad CAD +* Copyright (C) 2005 Dave Bullis +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/
+
#ifndef HAVE_DYNSTRING_H
#define HAVE_DYNSTRING_H
-typedef struct DynString DynString;
+#include <stddef.h>
+
struct DynString
{
char *s;
size_t size; // length of the string
size_t b_size; // length of the buffer containing the string
};
+typedef struct DynString DynString;
#define NaS {NULL, 0, 0}
#define isnas(S) (!(S)->s)
|