DISPATCH-558 - Removed assertions in core agent that can fail with malformed queries.
Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/8ba6302f Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/8ba6302f Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/8ba6302f Branch: refs/heads/0.7.x Commit: 8ba6302ffe6e03c7b583831876d4bb3da2e7bc34 Parents: 4f6d66b Author: Ted Ross <[email protected]> Authored: Thu Nov 3 15:46:48 2016 -0400 Committer: Ted Ross <[email protected]> Committed: Thu Nov 3 15:49:48 2016 -0400 ---------------------------------------------------------------------- src/router_core/agent.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/8ba6302f/src/router_core/agent.c ---------------------------------------------------------------------- diff --git a/src/router_core/agent.c b/src/router_core/agent.c index 16dd30b..5b46e01 100644 --- a/src/router_core/agent.c +++ b/src/router_core/agent.c @@ -245,8 +245,8 @@ static void qdr_agent_emit_columns(qdr_query_t *query, const char *qdr_columns[] qd_compose_start_list(query->body); int i = 0; while (query->columns[i] >= 0) { - assert(query->columns[i] < column_count); - qd_compose_insert_string(query->body, qdr_columns[query->columns[i]]); + if (query->columns[i] < column_count) + qd_compose_insert_string(query->body, qdr_columns[query->columns[i]]); i++; } qd_compose_end_list(query->body); @@ -266,11 +266,12 @@ static void qdr_agent_set_columns(qdr_query_t *query, // Either the attribute_names field is absent, it's not a list, or it's an empty list. // In this case, we will include all available attributes. // + if (column_count > QDR_AGENT_MAX_COLUMNS) + column_count = QDR_AGENT_MAX_COLUMNS; int i; for (i = 0; i < column_count; i++) query->columns[i] = i; query->columns[i] = -1; - assert(i < QDR_AGENT_MAX_COLUMNS); return; } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
