Skip to content

Commit 6f126d8

Browse files
author
Dmitri Tikhonov
committed
1.12.4: Fix memory leaks and gcc compilation warnings
1 parent 5f5d395 commit 6f126d8

File tree

5 files changed

+18
-3
lines changed

5 files changed

+18
-3
lines changed

CHANGELOG

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
2018-08-27
2+
3+
- 1.12.4
4+
- Fix memory leak when engine is destroyed
5+
- Fix memory leak in http_client
6+
- Fix gcc warning in unit tests
7+
18
2018-08-22
29

310
- 1.12.3

include/lsquic.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ extern "C" {
2525

2626
#define LSQUIC_MAJOR_VERSION 1
2727
#define LSQUIC_MINOR_VERSION 12
28-
#define LSQUIC_PATCH_VERSION 3
28+
#define LSQUIC_PATCH_VERSION 4
2929

3030
/**
3131
* Engine flags:

src/liblsquic/lsquic_engine.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -574,6 +574,7 @@ lsquic_engine_destroy (lsquic_engine_t *engine)
574574

575575
assert(0 == lsquic_mh_count(&engine->conns_out));
576576
assert(0 == lsquic_mh_count(&engine->conns_tickable));
577+
lsquic_mm_cleanup(&engine->pub.enp_mm);
577578
free(engine->conns_tickable.mh_elems);
578579
free(engine);
579580
}

test/http_client.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,7 @@ display_cert_chain (lsquic_conn_t *conn)
306306
name = X509_get_subject_name(cert);
307307
LSQ_INFO("cert #%u: name: %s", i,
308308
X509_NAME_oneline(name, buf, sizeof(buf)));
309+
X509_free(cert);
309310
}
310311

311312
sk_X509_free(chain);
@@ -712,5 +713,11 @@ main (int argc, char **argv)
712713
if (promise_fd >= 0)
713714
(void) close(promise_fd);
714715

716+
while ((pe = TAILQ_FIRST(&client_ctx.hcc_path_elems)))
717+
{
718+
TAILQ_REMOVE(&client_ctx.hcc_path_elems, pe, next_pe);
719+
free(pe);
720+
}
721+
715722
exit(0 == s ? EXIT_SUCCESS : EXIT_FAILURE);
716723
}

test/unittests/test_di_nocopy.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -281,8 +281,8 @@ run_di_nocopy_test (const struct nocopy_test *test)
281281
{
282282
data_frame = di->di_if->di_get_frame(di, nread);
283283
assert(data_frame); /* Self-check */
284-
n_to_read = test->read_until - nread > data_frame->df_size - data_frame->df_read_off
285-
? data_frame->df_size - data_frame->df_read_off : test->read_until - nread;
284+
n_to_read = test->read_until - nread > (unsigned) data_frame->df_size - data_frame->df_read_off
285+
? (unsigned) data_frame->df_size - data_frame->df_read_off : test->read_until - nread;
286286
data_frame->df_read_off += n_to_read;
287287
nread += n_to_read;
288288
if (data_frame->df_read_off == data_frame->df_size)

0 commit comments

Comments
 (0)