You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gm...@apache.org on 2017/03/16 18:30:21 UTC
qpid-dispatch git commit: DISPATCH-730 - Partial fix to some memory
leaks reported by coverity
Repository: qpid-dispatch
Updated Branches:
refs/heads/master 8800ab543 -> 36930bbd7
DISPATCH-730 - Partial fix to some memory leaks reported by coverity
Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/36930bbd
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/36930bbd
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/36930bbd
Branch: refs/heads/master
Commit: 36930bbd74462dbd20d4f0168c1acea91c6e7a72
Parents: 8800ab5
Author: Ganesh Murthy <gm...@redhat.com>
Authored: Thu Mar 16 14:29:58 2017 -0400
Committer: Ganesh Murthy <gm...@redhat.com>
Committed: Thu Mar 16 14:29:58 2017 -0400
----------------------------------------------------------------------
src/connection_manager.c | 2 +-
src/failoverlist.c | 4 +++-
src/server.c | 56 ++++++++++++++++++++++---------------------
3 files changed, 33 insertions(+), 29 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/36930bbd/src/connection_manager.c
----------------------------------------------------------------------
diff --git a/src/connection_manager.c b/src/connection_manager.c
index b00ab6e..be406d6 100644
--- a/src/connection_manager.c
+++ b/src/connection_manager.c
@@ -437,7 +437,7 @@ qd_config_ssl_profile_t *qd_dispatch_configure_ssl_profile(qd_dispatch_t *qd, qd
if (file) {
char buffer[200];
- char c;
+ int c;
int i=0;
while(true) {
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/36930bbd/src/failoverlist.c
----------------------------------------------------------------------
diff --git a/src/failoverlist.c b/src/failoverlist.c
index 411c230..e83f029 100644
--- a/src/failoverlist.c
+++ b/src/failoverlist.c
@@ -99,8 +99,10 @@ qd_failover_list_t *qd_failover_list(const char *text, const char **error)
do {
next = qd_fol_next(cursor, ",");
qd_failover_item_t *item = qd_fol_item(cursor, error);
- if (item == 0)
+ if (item == 0) {
+ qd_failover_list_free(list);
return 0;
+ }
DEQ_INSERT_TAIL(list->item_list, item);
cursor = next;
} while (cursor && *cursor);
http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/36930bbd/src/server.c
----------------------------------------------------------------------
diff --git a/src/server.c b/src/server.c
index 94f96ef..8d2178c 100644
--- a/src/server.c
+++ b/src/server.c
@@ -561,42 +561,44 @@ static void decorate_connection(qd_server_t *qd_server, pn_connection_t *conn, c
pn_data_put_int(pn_connection_properties(conn), config->inter_router_cost);
}
- qd_failover_list_t *fol = config->failover_list;
- if (fol) {
- pn_data_put_symbol(pn_connection_properties(conn),
- pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_LIST_KEY), QD_CONNECTION_PROPERTY_FAILOVER_LIST_KEY));
- pn_data_put_list(pn_connection_properties(conn));
- pn_data_enter(pn_connection_properties(conn));
- int fol_count = qd_failover_list_size(fol);
- for (int i = 0; i < fol_count; i++) {
- pn_data_put_map(pn_connection_properties(conn));
- pn_data_enter(pn_connection_properties(conn));
- pn_data_put_symbol(pn_connection_properties(conn),
- pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_NETHOST_KEY), QD_CONNECTION_PROPERTY_FAILOVER_NETHOST_KEY));
- pn_data_put_string(pn_connection_properties(conn),
- pn_bytes(strlen(qd_failover_list_host(fol, i)), qd_failover_list_host(fol, i)));
-
+ if (config) {
+ qd_failover_list_t *fol = config->failover_list;
+ if (fol) {
pn_data_put_symbol(pn_connection_properties(conn),
- pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_PORT_KEY), QD_CONNECTION_PROPERTY_FAILOVER_PORT_KEY));
- pn_data_put_string(pn_connection_properties(conn),
- pn_bytes(strlen(qd_failover_list_port(fol, i)), qd_failover_list_port(fol, i)));
-
- if (qd_failover_list_scheme(fol, i)) {
+ pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_LIST_KEY), QD_CONNECTION_PROPERTY_FAILOVER_LIST_KEY));
+ pn_data_put_list(pn_connection_properties(conn));
+ pn_data_enter(pn_connection_properties(conn));
+ int fol_count = qd_failover_list_size(fol);
+ for (int i = 0; i < fol_count; i++) {
+ pn_data_put_map(pn_connection_properties(conn));
+ pn_data_enter(pn_connection_properties(conn));
pn_data_put_symbol(pn_connection_properties(conn),
- pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_SCHEME_KEY), QD_CONNECTION_PROPERTY_FAILOVER_SCHEME_KEY));
+ pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_NETHOST_KEY), QD_CONNECTION_PROPERTY_FAILOVER_NETHOST_KEY));
pn_data_put_string(pn_connection_properties(conn),
- pn_bytes(strlen(qd_failover_list_scheme(fol, i)), qd_failover_list_scheme(fol, i)));
- }
+ pn_bytes(strlen(qd_failover_list_host(fol, i)), qd_failover_list_host(fol, i)));
- if (qd_failover_list_hostname(fol, i)) {
pn_data_put_symbol(pn_connection_properties(conn),
- pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_HOSTNAME_KEY), QD_CONNECTION_PROPERTY_FAILOVER_HOSTNAME_KEY));
+ pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_PORT_KEY), QD_CONNECTION_PROPERTY_FAILOVER_PORT_KEY));
pn_data_put_string(pn_connection_properties(conn),
- pn_bytes(strlen(qd_failover_list_hostname(fol, i)), qd_failover_list_hostname(fol, i)));
+ pn_bytes(strlen(qd_failover_list_port(fol, i)), qd_failover_list_port(fol, i)));
+
+ if (qd_failover_list_scheme(fol, i)) {
+ pn_data_put_symbol(pn_connection_properties(conn),
+ pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_SCHEME_KEY), QD_CONNECTION_PROPERTY_FAILOVER_SCHEME_KEY));
+ pn_data_put_string(pn_connection_properties(conn),
+ pn_bytes(strlen(qd_failover_list_scheme(fol, i)), qd_failover_list_scheme(fol, i)));
+ }
+
+ if (qd_failover_list_hostname(fol, i)) {
+ pn_data_put_symbol(pn_connection_properties(conn),
+ pn_bytes(strlen(QD_CONNECTION_PROPERTY_FAILOVER_HOSTNAME_KEY), QD_CONNECTION_PROPERTY_FAILOVER_HOSTNAME_KEY));
+ pn_data_put_string(pn_connection_properties(conn),
+ pn_bytes(strlen(qd_failover_list_hostname(fol, i)), qd_failover_list_hostname(fol, i)));
+ }
+ pn_data_exit(pn_connection_properties(conn));
}
pn_data_exit(pn_connection_properties(conn));
}
- pn_data_exit(pn_connection_properties(conn));
}
pn_data_exit(pn_connection_properties(conn));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org