@cryptotaxi247 / netdata-1 / commits / 884c69d36

fix file descriptor leak (#10013)

Adrien Mahieux committed Sep 30, 2020 at 19:40 UTC 884c69d36ddf5d1010d7243bf1251ba5fa709b85
1 file changed +4 -2
collectors/proc.plugin/sys_class_infiniband.c
+4 -2
@@ -375,12 +375,12 @@ int do_sys_class_infiniband(int update_every, usec_t dt)
375 // Standard counters are mandatory
376 if (!counters_dir)
377 continue;
378 + closedir(counters_dir);
379
379 - // Nearly same with hardware counters
380 + // Hardware Counters are optionnal, used later
381 char hwcounters_dirname[FILENAME_MAX + 1];
382 snprintfz(
383 hwcounters_dirname, FILENAME_MAX, "%s/%s/%s", ports_dirname, port_dent->d_name, "hw_counters");
383 - DIR *hwcounters_dir = opendir(hwcounters_dirname);
384
385 // Get new or existing ibport
386 struct ibport *p = get_ibport(dev_dent->d_name, port_dent->d_name);
@@ -412,6 +412,7 @@ int do_sys_class_infiniband(int update_every, usec_t dt)
412 FOREACH_COUNTER(GEN_DO_COUNTER_NAME, p)
413
414 // Check HW Counters vendor dependent
415 + DIR *hwcounters_dir = opendir(hwcounters_dirname);
416 if (hwcounters_dir) {
417 // By default set standard
418 p->do_hwpackets = config_get_boolean_ondemand(buffer, "hwpackets", do_hwpackets);
@@ -442,6 +443,7 @@ int do_sys_class_infiniband(int update_every, usec_t dt)
443 p->do_hwpackets = CONFIG_BOOLEAN_NO;
444 p->do_hwerrors = CONFIG_BOOLEAN_NO;
445 }
446 + closedir(hwcounters_dir);
447 }
448 }
449