Help clang understand that we aren't dereferencing
authorFabian Keil <fk@fabiankeil.de>
Sun, 1 Mar 2009 18:34:24 +0000 (18:34 +0000)
committerFabian Keil <fk@fabiankeil.de>
Sun, 1 Mar 2009 18:34:24 +0000 (18:34 +0000)
NULL pointers here.

loaders.c

index 10d08b8..fa9a891 100644 (file)
--- a/loaders.c
+++ b/loaders.c
@@ -1,4 +1,4 @@
-const char loaders_rcs[] = "$Id: loaders.c,v 1.68 2008/09/19 15:26:28 fabiankeil Exp $";
+const char loaders_rcs[] = "$Id: loaders.c,v 1.69 2008/09/21 13:36:52 fabiankeil Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/loaders.c,v $
@@ -35,6 +35,12 @@ const char loaders_rcs[] = "$Id: loaders.c,v 1.68 2008/09/19 15:26:28 fabiankeil
  *
  * Revisions   :
  *    $Log: loaders.c,v $
+ *    Revision 1.69  2008/09/21 13:36:52  fabiankeil
+ *    If change-x-forwarded-for{add} is used and the client
+ *    sends multiple X-Forwarded-For headers, append the client's
+ *    IP address to each one of them. "Traditionally" we would
+ *    lose all but the last one.
+ *
  *    Revision 1.68  2008/09/19 15:26:28  fabiankeil
  *    Add change-x-forwarded-for{} action to block or add
  *    X-Forwarded-For headers. Mostly based on code removed
@@ -924,6 +930,7 @@ jb_err edit_read_line(FILE *fp,
 
       /* Trim leading spaces if we're at the start of the line */
       linestart = linebuf;
+      assert(NULL != data);
       if (*data == '\0')
       {
          /* Trim leading spaces */
@@ -1563,6 +1570,7 @@ int load_one_re_filterfile(struct client_state *csp, int fileid)
          }
          else
          {
+            assert(NULL != bl);
             bl->next = new_bl;
          }
          bl = new_bl;
@@ -1626,7 +1634,7 @@ int load_one_re_filterfile(struct client_state *csp, int fileid)
             {
                bl->joblist = dummy;
             }
-            else
+            else if (NULL != lastjob)
             {
                lastjob->next = dummy;
             }