mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-30 23:53:32 +01:00
Fix a rare memleak during stats writing
If rep_hist_buffer_stats_write() was called unitinitalized, we'd leak memory.
This commit is contained in:
parent
680646e0de
commit
f303274490
@ -5,4 +5,5 @@
|
|||||||
- Add some forgotten return value checks during unit tests. Found
|
- Add some forgotten return value checks during unit tests. Found
|
||||||
by coverity.
|
by coverity.
|
||||||
- Don't use 1-bit wide signed bit fields. Found by coverity.
|
- Don't use 1-bit wide signed bit fields. Found by coverity.
|
||||||
|
- Fix a rare memory leak during stats writing. Found by coverity.
|
||||||
|
|
||||||
|
@ -2451,8 +2451,8 @@ rep_hist_buffer_stats_write(time_t now)
|
|||||||
int processed_cells[SHARES], circs_in_share[SHARES],
|
int processed_cells[SHARES], circs_in_share[SHARES],
|
||||||
number_of_circuits, i;
|
number_of_circuits, i;
|
||||||
double queued_cells[SHARES], time_in_queue[SHARES];
|
double queued_cells[SHARES], time_in_queue[SHARES];
|
||||||
smartlist_t *str_build = smartlist_create();
|
smartlist_t *str_build = NULL;
|
||||||
char *str = NULL, *buf=NULL;
|
char *str = NULL, *buf = NULL;
|
||||||
circuit_t *circ;
|
circuit_t *circ;
|
||||||
|
|
||||||
if (!start_of_buffer_stats_interval)
|
if (!start_of_buffer_stats_interval)
|
||||||
@ -2460,6 +2460,8 @@ rep_hist_buffer_stats_write(time_t now)
|
|||||||
if (start_of_buffer_stats_interval + WRITE_STATS_INTERVAL > now)
|
if (start_of_buffer_stats_interval + WRITE_STATS_INTERVAL > now)
|
||||||
goto done; /* Not ready to write */
|
goto done; /* Not ready to write */
|
||||||
|
|
||||||
|
str_build = smartlist_create();
|
||||||
|
|
||||||
/* add current circuits to stats */
|
/* add current circuits to stats */
|
||||||
for (circ = _circuit_get_global_list(); circ; circ = circ->next)
|
for (circ = _circuit_get_global_list(); circ; circ = circ->next)
|
||||||
rep_hist_buffer_stats_add_circ(circ, now);
|
rep_hist_buffer_stats_add_circ(circ, now);
|
||||||
|
Loading…
Reference in New Issue
Block a user