Remove vi settings line so the user isn't tempted to stray away from the right path
[privoxy.git] / ssplit.c
index e77cfc0..8c0ed51 100644 (file)
--- a/ssplit.c
+++ b/ssplit.c
@@ -1,4 +1,4 @@
-const char ssplit_rcs[] = "$Id: ssplit.c,v 1.8 2006/07/18 14:48:47 david__schmidt Exp $";
+const char ssplit_rcs[] = "$Id: ssplit.c,v 1.11 2011/05/22 10:20:05 fabiankeil Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/ssplit.c,v $
@@ -9,10 +9,10 @@ const char ssplit_rcs[] = "$Id: ssplit.c,v 1.8 2006/07/18 14:48:47 david__schmid
  *                Privoxy team. http://www.privoxy.org/
  *
  *                Based on the Internet Junkbuster originally written
- *                by and Copyright (C) 1997 Anonymous Coders and 
+ *                by and Copyright (C) 1997 Anonymous Coders and
  *                Junkbusters Corporation.  http://www.junkbusters.com
  *
- *                This program is free software; you can redistribute it 
+ *                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
@@ -30,36 +30,8 @@ const char ssplit_rcs[] = "$Id: ssplit.c,v 1.8 2006/07/18 14:48:47 david__schmid
  *                or write to the Free Software Foundation, Inc., 59
  *                Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  *
- * Revisions   :
- *    $Log: ssplit.c,v $
- *    Revision 1.8  2006/07/18 14:48:47  david__schmidt
- *    Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
- *    with what was really the latest development (the v_3_0_branch branch)
- *
- *    Revision 1.6  2002/03/26 22:29:55  swa
- *    we have a new homepage!
- *
- *    Revision 1.5  2002/03/24 13:25:43  swa
- *    name change related issues
- *
- *    Revision 1.4  2001/11/13 00:16:38  jongfoster
- *    Replacing references to malloc.h with the standard stdlib.h
- *    (See ANSI or K&R 2nd Ed)
- *
- *    Revision 1.3  2001/05/29 08:54:25  jongfoster
- *    Rewrote the innards of ssplit() to be easier to understand,
- *    faster, and to use less memory.  Didn't change the interface
- *    except to give the parameters meaningful names.
- *
- *    Revision 1.2  2001/05/17 23:01:01  oes
- *     - Cleaned CRLF's from the sources and related files
- *
- *    Revision 1.1.1.1  2001/05/15 13:59:04  oes
- *    Initial import of version 2.9.3 source tree
- *
- *
  *********************************************************************/
-\f
+
 
 #include "config.h"
 
@@ -91,18 +63,18 @@ const char ssplit_h_rcs[] = SSPLIT_H_VERSION;
  *          3  :  vec[] = results vector (aka. array) [out]
  *          4  :  vec_len = number of usable slots in the vector (aka. array size)
  *          5  :  dont_save_empty_fields = zero if consecutive delimiters
- *                give a null output field(s), nonzero if they are just 
+ *                give a null output field(s), nonzero if they are just
  *                to be considered as single delimeter
  *          6  :  ignore_leading = nonzero to ignore leading field
  *                separators.
  *
- * Returns     :  -1 => Error: vec_len is too small to hold all the 
+ * Returns     :  -1 => Error: vec_len is too small to hold all the
  *                      data, or str == NULL.
  *                >=0 => the number of fields put in `vec'.
  *                On error, vec and str may still have been overwritten.
  *
  *********************************************************************/
-int ssplit(char *str, const char *delim, char *vec[], int vec_len, 
+int ssplit(char *str, const char *delim, char *vec[], size_t vec_len,
            int dont_save_empty_fields, int ignore_leading)
 {
    unsigned char is_delim[256];
@@ -150,7 +122,7 @@ int ssplit(char *str, const char *delim, char *vec[], int vec_len,
      || (is_delim[(unsigned)(unsigned char)*str] == 0) )
       {
       /*
-       * We want empty fields, or the first character in this 
+       * We want empty fields, or the first character in this
        * field is not a delimiter or the end of string.
        * So save it.
        */
@@ -158,24 +130,24 @@ int ssplit(char *str, const char *delim, char *vec[], int vec_len,
       {
          return(-1); /* overflow */
       }
-      vec[vec_count++] = (char *) str;   
+      vec[vec_count++] = (char *) str;
    }
 
    while ((char_type = is_delim[(unsigned)(unsigned char)*str]) != 2)
    {
-      if (char_type == 1)    
+      if (char_type == 1)
       {
          /* the char is a separator */
 
          /* null terminate the substring */
-         *str++ = '\0';      
+         *str++ = '\0';
 
          /* Check if we want to save this field */
          if ( (!dont_save_empty_fields)
            || (is_delim[(unsigned)(unsigned char)*str] == 0) )
             {
             /*
-             * We want empty fields, or the first character in this 
+             * We want empty fields, or the first character in this
              * field is not a delimiter or the end of string.
              * So save it.
              */
@@ -183,7 +155,7 @@ int ssplit(char *str, const char *delim, char *vec[], int vec_len,
             {
                return(-1); /* overflow */
             }
-            vec[vec_count++] = (char *) str;   
+            vec[vec_count++] = (char *) str;
          }
       }
       else