mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-24 06:48:05 +01:00
Stop spurious clang shallow analysis null pointer errors
Avoid 4 null pointer errors under clang shallow analysis (the default when building under Xcode) by using tor_assert() to prove that the pointers aren't null. Resolves issue 13284 via minor code refactoring.
This commit is contained in:
parent
5190ec0bc4
commit
ff8fe38a2f
4 changed files with 9 additions and 0 deletions
3
changes/issue13284-spurious-clang-shallow-analyze-errors
Normal file
3
changes/issue13284-spurious-clang-shallow-analyze-errors
Normal file
|
@ -0,0 +1,3 @@
|
|||
o Minor bugfixes:
|
||||
- Avoid 4 null pointer errors under clang shallow analysis by using
|
||||
tor_assert() to prove that the pointers aren't null. Fixes bug 13284.
|
|
@ -1395,6 +1395,8 @@ dirserv_compute_performance_thresholds(routerlist_t *rl,
|
|||
routerinfo_t *ri = node->ri;
|
||||
const char *id = node->identity;
|
||||
uint32_t bw_kb;
|
||||
/* resolve spurious clang shallow analysis null pointer errors */
|
||||
tor_assert(ri);
|
||||
node->is_exit = (!router_exit_policy_rejects_all(ri) &&
|
||||
exit_policy_is_general_exit(ri->exit_policy));
|
||||
uptimes[n_active] = (uint32_t)real_uptime(ri, now);
|
||||
|
|
|
@ -647,6 +647,8 @@ dirvote_compute_params(smartlist_t *votes, int method, int total_authorities)
|
|||
next_param = NULL;
|
||||
else
|
||||
next_param = smartlist_get(param_list, param_sl_idx+1);
|
||||
/* resolve spurious clang shallow analysis null pointer errors */
|
||||
tor_assert(param);
|
||||
if (!next_param || strncmp(next_param, param, cur_param_len)) {
|
||||
/* We've reached the end of a series. */
|
||||
/* Make sure enough authorities voted on this param, unless the
|
||||
|
|
|
@ -475,6 +475,8 @@ trusted_dirs_remove_old_certs(void)
|
|||
time_t cert_published;
|
||||
if (newest == cert)
|
||||
continue;
|
||||
/* resolve spurious clang shallow analysis null pointer errors */
|
||||
tor_assert(cert);
|
||||
expired = now > cert->expires;
|
||||
cert_published = cert->cache_info.published_on;
|
||||
/* Store expired certs for 48 hours after a newer arrives;
|
||||
|
|
Loading…
Add table
Reference in a new issue