From f1b04c40ba9faf9b7b8969cf3686c35bb7b79b33 Mon Sep 17 00:00:00 2001 From: Rodrigo Arias Mallo Date: Tue, 6 Aug 2024 14:15:07 +0200 Subject: Use dStrdup instead of strdup The strdup function is not available in POSIX-2001, so we use our own implementation in dlib: dStrdup. Reviewed-by: dogma --- lout/misc.cc | 8 ++++---- lout/misc.hh | 3 ++- lout/object.cc | 5 +++-- 3 files changed, 9 insertions(+), 7 deletions(-) (limited to 'lout') diff --git a/lout/misc.cc b/lout/misc.cc index bffc68f7..c6e057fa 100644 --- a/lout/misc.cc +++ b/lout/misc.cc @@ -32,10 +32,10 @@ namespace misc { const char *prgName = PRGNAME; -void init (int argc, char *argv[]) -{ - prgName = strdup (argv[0]); -} +//void init (int argc, char *argv[]) +//{ +// prgName = dStrdup (argv[0]); +//} // ------------------ diff --git a/lout/misc.hh b/lout/misc.hh index 80f227f8..1108c1eb 100644 --- a/lout/misc.hh +++ b/lout/misc.hh @@ -6,6 +6,7 @@ #include #include #include +#include "dlib/dlib.h" namespace lout { @@ -586,7 +587,7 @@ public: * A copy is kept in the buffer, so the caller does not have to care * about memory management. */ - inline void append(const char *str) { appendNoCopy(strdup(str)); } + inline void append(const char *str) { appendNoCopy(dStrdup(str)); } inline void appendInt(int n) { char buf[32]; sprintf (buf, "%d", n); append (buf); } inline void appendPointer(void *p) diff --git a/lout/object.cc b/lout/object.cc index e4e0152a..5c2ee433 100644 --- a/lout/object.cc +++ b/lout/object.cc @@ -20,6 +20,7 @@ #include "object.hh" +#include "dlib/dlib.h" #include #include #include @@ -83,7 +84,7 @@ const char *Object::toString() /** \todo garbage! */ misc::StringBuffer sb; intoStringBuffer(&sb); - char *s = strdup(sb.getChars()); + char *s = dStrdup(sb.getChars()); return s; } @@ -291,7 +292,7 @@ void ConstString::intoStringBuffer(misc::StringBuffer *sb) // String // ------------ -String::String (const char *str): ConstString (str ? strdup(str) : NULL) +String::String (const char *str): ConstString (str ? dStrdup(str) : NULL) { } -- cgit v1.2.3