about summary refs log tree commit diff
path: root/lib/util
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2018-01-20 03:29:58 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2018-01-20 03:29:58 +0000
commite84a847579e3f3e50c4021bed104b3f4db30976b (patch)
tree629006ea17ef77a137a45d053e46613b5c81e2cc /lib/util
parent407cc418eba8b3051231e7dd8ca85c2776714fa4 (diff)
downloadnetpbm-mirror-e84a847579e3f3e50c4021bed104b3f4db30976b.tar.gz
netpbm-mirror-e84a847579e3f3e50c4021bed104b3f4db30976b.tar.xz
netpbm-mirror-e84a847579e3f3e50c4021bed104b3f4db30976b.zip
Add pm_strnlen because Mac OSX before 10.7, at least, does not have it
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@3125 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'lib/util')
-rw-r--r--lib/util/nstring.c13
-rw-r--r--lib/util/nstring.h4
2 files changed, 17 insertions, 0 deletions
diff --git a/lib/util/nstring.c b/lib/util/nstring.c
index 48984309..8cff4d56 100644
--- a/lib/util/nstring.c
+++ b/lib/util/nstring.c
@@ -195,6 +195,19 @@ static char credits[] = "\n\
 @(#)snprintf.c, v2.2: http://www.ijs.si/software/snprintf/\n";
 
 
+/* MacOS X before 10.7, for one, does not have strnlen */
+size_t
+pm_strnlen(const char * const s,
+           size_t       const maxlen) {
+
+    unsigned int i;
+
+    for (i = 0; i < maxlen && s[i]; ++i) {}
+
+    return i;
+}
+
+
 
 void
 pm_vsnprintf(char *       const str,
diff --git a/lib/util/nstring.h b/lib/util/nstring.h
index 257b04b0..bded8417 100644
--- a/lib/util/nstring.h
+++ b/lib/util/nstring.h
@@ -150,6 +150,10 @@ strncaseeq(const char * const comparand,
 
 extern const char * const pm_strsol;
 
+size_t
+pm_strnlen(const char * const s,
+           size_t       const maxlen);
+
 int
 pm_snprintf(char *       const dest,
             size_t       const str_m,