You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ch...@apache.org on 2018/05/16 20:14:06 UTC
[08/12] qpid-dispatch git commit: DISPATCH-990: Fix locks so hostname
adds are atomic
DISPATCH-990: Fix locks so hostname adds are atomic
Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/2b0f3d06
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/2b0f3d06
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/2b0f3d06
Branch: refs/heads/master
Commit: 2b0f3d066428f5c13eed83848f017c39ca56f565
Parents: 9c0a09d
Author: Chuck Rolke <cr...@redhat.com>
Authored: Mon May 14 12:57:20 2018 -0400
Committer: Chuck Rolke <cr...@redhat.com>
Committed: Mon May 14 12:57:20 2018 -0400
----------------------------------------------------------------------
src/policy.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/2b0f3d06/src/policy.c
----------------------------------------------------------------------
diff --git a/src/policy.c b/src/policy.c
index dec645e..9c99c88 100644
--- a/src/policy.c
+++ b/src/policy.c
@@ -838,17 +838,16 @@ bool qd_policy_host_pattern_add(qd_policy_t *policy, char *hostPattern)
{
sys_mutex_lock(policy->tree_lock);
void *oldp = qd_parse_tree_add_pattern_str(policy->hostname_tree, hostPattern, hostPattern);
- sys_mutex_unlock(policy->tree_lock);
if (oldp) {
- qd_log(policy->log_source,
- QD_LOG_WARNING,
- "vhost hostname pattern '%s' failed to replace optimized pattern '%s'",
- hostPattern, oldp);
- sys_mutex_lock(policy->tree_lock);
void *recovered = qd_parse_tree_add_pattern_str(policy->hostname_tree, (char *)oldp, oldp);
- sys_mutex_unlock(policy->tree_lock);
- assert (recovered && !strcmp((char *)recovered, hostPattern));
+ assert (recovered);
}
+ sys_mutex_unlock(policy->tree_lock);
+ if (oldp)
+ qd_log(policy->log_source,
+ QD_LOG_WARNING,
+ "vhost hostname pattern '%s' failed to replace optimized pattern '%s'",
+ hostPattern, oldp);
return oldp == 0;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org