Fix for problem with "" string in trim_string(). Pointed out by Ben Winslow <rain...
authorJeremy Allison <jra@samba.org>
Thu, 10 May 2001 23:17:46 +0000 (23:17 +0000)
committerJeremy Allison <jra@samba.org>
Thu, 10 May 2001 23:17:46 +0000 (23:17 +0000)
Jeremy.

source/lib/util_str.c

index b517d93dd8d1576fc619d27bee88a708a27df3cd..78366fceb78afc003b06f8af07d6eddc535ba7dc 100644 (file)
@@ -545,9 +545,11 @@ BOOL trim_string(char *s,const char *front,const char *back)
     size_t back_len;
     char       *sP;
 
-    if ( !s ) {
+       /* Ignore null or empty strings. */
+
+    if ( !s || (s[0] == '\0'))
         return False;
-    }
+
     sP = s;
     s_len      = strlen( s ) + 1;
     front_len  = (front) ? strlen( front ) + 1 : 0;
@@ -589,7 +591,7 @@ BOOL trim_string(char *s,const char *front,const char *back)
      * Kenichi Okuyama.
      */
 
-    if ( back && back_len > 1 ) {
+    if ( back && back_len > 1 && s_len > back_len) {
         char   *bP     = sP + s_len - back_len;
         long   b_len   = s_len;