summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 1d0fac0)
raw | patch | inline | side by side (parent: 1d0fac0)
author | Florian Forster <octo@collectd.org> | |
Thu, 17 Dec 2015 13:57:13 +0000 (14:57 +0100) | ||
committer | Florian Forster <octo@collectd.org> | |
Thu, 17 Dec 2015 13:57:40 +0000 (14:57 +0100) |
CID: 37988
src/email.c | patch | blob | history |
diff --git a/src/email.c b/src/email.c
index 6a1350f9edab96782d504409a2958263b59839a1..0e34b89f4661a870fa2032868f0e902f5e87911a 100644 (file)
--- a/src/email.c
+++ b/src/email.c
break;
continue;
}
+ if (len < 3) { /* [a-z] ':' '\n' */
+ continue;
+ }
- line[len - 1] = '\0';
+ line[len - 1] = 0;
log_debug ("collect: line = '%s'", line);
bytes = atoi (tmp);
pthread_mutex_lock (&count_mutex);
- type_list_incr (&list_count, type, 1);
+ type_list_incr (&list_count, type, /* increment = */ 1);
pthread_mutex_unlock (&count_mutex);
if (bytes > 0) {
pthread_mutex_lock (&size_mutex);
- type_list_incr (&list_size, type, bytes);
+ type_list_incr (&list_size, type, /* increment = */ bytes);
pthread_mutex_unlock (&size_mutex);
}
}
pthread_mutex_unlock (&score_mutex);
}
else if ('c' == line[0]) { /* c:<type1>[,<type2>,...] */
- char *ptr = NULL;
- char *type = strtok_r (line + 2, ",", &ptr);
-
- do {
- pthread_mutex_lock (&check_mutex);
- type_list_incr (&list_check, type, 1);
- pthread_mutex_unlock (&check_mutex);
- } while (NULL != (type = strtok_r (NULL, ",", &ptr)));
+ char *dummy = line + 2;
+ char *endptr = NULL;
+ char *type;
+
+ pthread_mutex_lock (&check_mutex);
+ while ((type = strtok_r (dummy, ",", &endptr)) != NULL)
+ {
+ dummy = NULL;
+ type_list_incr (&list_check, type, /* increment = */ 1);
+ }
+ pthread_mutex_unlock (&check_mutex);
}
else {
log_err ("collect: unknown type '%c'", line[0]);