Merge branch 'master' into ff/rrdd
[rrdtool.git] / src / rrd_update.c
index 5536c3c..b4466e1 100644 (file)
@@ -1,6 +1,6 @@
 
 /*****************************************************************************
- * RRDtool 1.3.0  Copyright by Tobi Oetiker, 1997-2008
+ * RRDtool 1.3.1  Copyright by Tobi Oetiker, 1997-2008
  *                Copyright by Florian Forster, 2008
  *****************************************************************************
  * rrd_update.c  RRD Update Function
@@ -384,7 +384,7 @@ int rrd_update(
     int       opt;
     char     *tmplt = NULL;
     int       rc = -1;
-    char     *daemon = NULL;
+    char     *opt_daemon = NULL;
 
     optind = 0;
     opterr = 0;         /* initialize getopt */
@@ -401,10 +401,10 @@ int rrd_update(
             break;
 
         case 'd':
-            if (daemon != NULL)
-                free (daemon);
-            daemon = strdup (optarg);
-            if (daemon == NULL)
+            if (opt_daemon != NULL)
+                free (opt_daemon);
+            opt_daemon = strdup (optarg);
+            if (opt_daemon == NULL)
             {
                 rrd_set_error("strdup failed.");
                 goto out;
@@ -423,22 +423,22 @@ int rrd_update(
         goto out;
     }
 
-    if ((tmplt != NULL) && (daemon != NULL))
+    if ((tmplt != NULL) && (opt_daemon != NULL))
     {
-        rrd_set_error("The caching daemon cannot be used together with "
+        rrd_set_error("The caching opt_daemon cannot be used together with "
                 "templates yet.");
         goto out;
     }
 
-    if ((tmplt == NULL) && (daemon == NULL))
+    if ((tmplt == NULL) && (opt_daemon == NULL))
     {
         char *temp;
 
         temp = getenv (ENV_RRDCACHED_ADDRESS);
         if (temp != NULL)
         {
-            daemon = strdup (temp);
-            if (daemon == NULL)
+            opt_daemon = strdup (temp);
+            if (opt_daemon == NULL)
             {
                 rrd_set_error("strdup failed.");
                 goto out;
@@ -446,14 +446,14 @@ int rrd_update(
         }
     }
 
-    if (daemon != NULL)
+    if (opt_daemon != NULL)
     {
         int status;
 
-        status = rrdc_connect (daemon);
+        status = rrdc_connect (opt_daemon);
         if (status != 0)
         {
-            rrd_set_error("Unable to connect to daemon: %s",
+            rrd_set_error("Unable to connect to opt_daemon: %s",
                     (status < 0)
                     ? "Internal error"
                     : rrd_strerror (status));
@@ -465,15 +465,19 @@ int rrd_update(
                 /* values = */ (void *) (argv + optind + 1));
         if (status != 0)
         {
-            rrd_set_error("Failed sending the values to the daemon: %s",
+            rrd_set_error("Failed sending the values to the opt_daemon: %s",
                     (status < 0)
                     ? "Internal error"
                     : rrd_strerror (status));
         }
+        else
+        {
+            rc = 0;
+        }
 
         rrdc_disconnect ();
         goto out;
-    } /* if (daemon != NULL) */
+    } /* if (opt_daemon != NULL) */
 
     rc = rrd_update_r(argv[optind], tmplt,
                       argc - optind - 1, (const char **) (argv + optind + 1));
@@ -483,10 +487,10 @@ int rrd_update(
         free(tmplt);
         tmplt = NULL;
     }
-    if (daemon != NULL)
+    if (opt_daemon != NULL)
     {
-        free (daemon);
-        daemon = NULL;
+        free (opt_daemon);
+        opt_daemon = NULL;
     }
     return rc;
 }
@@ -579,15 +583,15 @@ int _rrd_update(
                         rra_step_cnt, updvals, tmpl_idx, tmpl_cnt,
                         &pcdp_summary, version, skip_update,
                         &schedule_smooth) == -1) {
-           if (rrd_test_error()) { /* Should have error string always here */
-               char *save_error;
-
-               /* Prepend file name to error message */
-               if ((save_error = strdup(rrd_get_error())) != NULL) {
-                   rrd_set_error("%s: %s", filename, save_error);
-                   free(save_error);
-               }
-           }
+            if (rrd_test_error()) { /* Should have error string always here */
+                char     *save_error;
+
+                /* Prepend file name to error message */
+                if ((save_error = strdup(rrd_get_error())) != NULL) {
+                    rrd_set_error("%s: %s", filename, save_error);
+                    free(save_error);
+                }
+            }
             free(arg_copy);
             break;
         }