rrdtool: unlock mutex on error
[collectd.git] / src / rrdtool.c
index 8497a24..e093f2b 100644 (file)
@@ -204,7 +204,7 @@ static int value_list_to_string_multiple (char *buffer, int buffer_len,
        int offset;
        int status;
        time_t tt;
-       int i;
+       size_t i;
 
        memset (buffer, '\0', buffer_len);
 
@@ -733,7 +733,10 @@ static int rrd_cache_insert (const char *filename,
        {
                rc = malloc (sizeof (*rc));
                if (rc == NULL)
+               {
+                       pthread_mutex_unlock (&cache_lock);
                        return (-1);
+               }
                rc->values_num = 0;
                rc->values = NULL;
                rc->first_value = 0;