You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by yl...@apache.org on 2022/01/13 15:55:21 UTC
svn commit: r1897005 - in /apr/apr/branches/1.7.x: ./ test/abts.c test/abts.h test/sendfile.c
Author: ylavic
Date: Thu Jan 13 15:55:21 2022
New Revision: 1897005
URL: http://svn.apache.org/viewvc?rev=1897005&view=rev
Log:
Merge r1893202 from trunk:
test: fix memory leaks of the test framework at exit.
To please memory leak analysers..
Submitted by: ylavic
Modified:
apr/apr/branches/1.7.x/ (props changed)
apr/apr/branches/1.7.x/test/abts.c
apr/apr/branches/1.7.x/test/abts.h
apr/apr/branches/1.7.x/test/sendfile.c
Propchange: apr/apr/branches/1.7.x/
------------------------------------------------------------------------------
Merged /apr/apr/trunk:r1893202
Modified: apr/apr/branches/1.7.x/test/abts.c
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/test/abts.c?rev=1897005&r1=1897004&r2=1897005&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/test/abts.c (original)
+++ apr/apr/branches/1.7.x/test/abts.c Thu Jan 13 15:55:21 2022
@@ -120,7 +120,7 @@ abts_suite *abts_add_suite(abts_suite *s
suite_name, p - suite_name);
}
else {
- subsuite->name = suite_name;
+ subsuite->name = strdup(suite_name);
}
if (list_tests) {
@@ -152,6 +152,21 @@ abts_suite *abts_add_suite(abts_suite *s
return suite;
}
+static void abts_free_suite(abts_suite *suite)
+{
+ if (suite) {
+ sub_suite *dptr, *next;
+
+ for (dptr = suite->head; dptr; dptr = next) {
+ next = dptr->next;
+ free(dptr->name);
+ free(dptr);
+ }
+
+ free(suite);
+ }
+}
+
void abts_run_test(abts_suite *ts, test_func f, void *value)
{
abts_case tc;
@@ -430,6 +445,7 @@ int main(int argc, const char *const arg
}
rv = report(suite);
+ abts_free_suite(suite);
return rv;
}
Modified: apr/apr/branches/1.7.x/test/abts.h
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/test/abts.h?rev=1897005&r1=1897004&r2=1897005&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/test/abts.h (original)
+++ apr/apr/branches/1.7.x/test/abts.h Thu Jan 13 15:55:21 2022
@@ -39,7 +39,7 @@ extern "C" {
#endif
struct sub_suite {
- const char *name;
+ char *name;
int num_test;
int failed;
int not_run;
Modified: apr/apr/branches/1.7.x/test/sendfile.c
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/test/sendfile.c?rev=1897005&r1=1897004&r2=1897005&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/test/sendfile.c (original)
+++ apr/apr/branches/1.7.x/test/sendfile.c Thu Jan 13 15:55:21 2022
@@ -274,7 +274,7 @@ static int client(apr_pool_t *p, client_
hdtr.headers[0].iov_len = strlen(hdtr.headers[0].iov_base);
hdtr.headers[1].iov_base = HDR2;
hdtr.headers[1].iov_len = strlen(hdtr.headers[1].iov_base);
- hdtr.headers[2].iov_base = malloc(HDR3_LEN);
+ hdtr.headers[2].iov_base = apr_palloc(p, HDR3_LEN);
assert(hdtr.headers[2].iov_base);
memset(hdtr.headers[2].iov_base, HDR3_CHAR, HDR3_LEN);
hdtr.headers[2].iov_len = HDR3_LEN;
@@ -285,9 +285,9 @@ static int client(apr_pool_t *p, client_
hdtr.trailers[0].iov_len = strlen(hdtr.trailers[0].iov_base);
hdtr.trailers[1].iov_base = TRL2;
hdtr.trailers[1].iov_len = strlen(hdtr.trailers[1].iov_base);
- hdtr.trailers[2].iov_base = malloc(TRL3_LEN);
- memset(hdtr.trailers[2].iov_base, TRL3_CHAR, TRL3_LEN);
+ hdtr.trailers[2].iov_base = apr_palloc(p, TRL3_LEN);
assert(hdtr.trailers[2].iov_base);
+ memset(hdtr.trailers[2].iov_base, TRL3_CHAR, TRL3_LEN);
hdtr.trailers[2].iov_len = TRL3_LEN;
expected_len =