[tor-commits] [tor/master] Avoid calling SMARTLIST_FOREACH on a NULL smartlist in tests
nickm at torproject.org
nickm at torproject.org
Tue Feb 10 06:35:47 UTC 2015
commit d0759da14eeaefb186d8d514f971b0b1a0618a0f
Author: teor <teor2345 at gmail.com>
Date: Sun Feb 8 23:41:37 2015 +1100
Avoid calling SMARTLIST_FOREACH on a NULL smartlist in tests
Check if each smartlist is NULL before calling SMARTLIST_FOREACH on it.
Bug discovered by the clang static analyzer.
Apple clang 600.0.56 (LLVM 3.5svn) on x86_64-apple-darwin14.1.0.
---
src/test/test_address.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/src/test/test_address.c b/src/test/test_address.c
index f98cc12..7f7347f 100644
--- a/src/test/test_address.c
+++ b/src/test/test_address.c
@@ -207,9 +207,10 @@ test_address_ifaddrs_to_smartlist(void *arg)
tor_free(ifa_ipv4);
tor_free(ifa_ipv6);
tor_free(sockaddr_to_check);
- SMARTLIST_FOREACH(smartlist, tor_addr_t *, t, tor_free(t));
- smartlist_free(smartlist);
-
+ if (smartlist) {
+ SMARTLIST_FOREACH(smartlist, tor_addr_t *, t, tor_free(t));
+ smartlist_free(smartlist);
+ }
return;
}
@@ -442,8 +443,10 @@ test_address_get_if_addrs_ioctl(void *arg)
tt_assert(smartlist_contains_localhost_tor_addr(result));
done:
- SMARTLIST_FOREACH(result, tor_addr_t *, t, tor_free(t));
- smartlist_free(result);
+ if (result) {
+ SMARTLIST_FOREACH(result, tor_addr_t *, t, tor_free(t));
+ smartlist_free(result);
+ }
return;
}
More information about the tor-commits
mailing list