Merge branch 'master' into ff/rrdcached
[collectd.git] / src / utils_tail_match.c
index 06412b9..f518b1c 100644 (file)
@@ -72,7 +72,11 @@ static int simple_submit_match (cu_match_t *match, void *user_data)
   if (match_value == NULL)
     return (-1);
 
-  values[0] = match_value->value;
+  if ((match_value->ds_type & UTILS_MATCH_DS_TYPE_GAUGE)
+      && (match_value->values_num == 0))
+    values[0].gauge = NAN;
+  else
+    values[0] = match_value->value;
 
   vl.values = values;
   vl.values_len = 1;
@@ -81,10 +85,11 @@ static int simple_submit_match (cu_match_t *match, void *user_data)
   sstrncpy (vl.plugin, data->plugin, sizeof (vl.plugin));
   sstrncpy (vl.plugin_instance, data->plugin_instance,
       sizeof (vl.plugin_instance));
+  sstrncpy (vl.type, data->type, sizeof (vl.type));
   sstrncpy (vl.type_instance, data->type_instance,
       sizeof (vl.type_instance));
 
-  plugin_dispatch_values (data->type, &vl);
+  plugin_dispatch_values (&vl);
 
   if (match_value->ds_type & UTILS_MATCH_DS_TYPE_GAUGE)
   {