Repository: qpid-proton Updated Branches: refs/heads/master 0816badb2 -> 3f64ad799
NO-JIRA: minor cleanups for issues uncovered by Coverity Scan. Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/3f64ad79 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/3f64ad79 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/3f64ad79 Branch: refs/heads/master Commit: 3f64ad7998b0d42bbefe672f08110893d96a94c9 Parents: 0816bad Author: Ken Giusti <[email protected]> Authored: Tue Mar 10 13:13:34 2015 -0400 Committer: Ken Giusti <[email protected]> Committed: Tue Mar 10 13:13:34 2015 -0400 ---------------------------------------------------------------------- proton-c/src/codec/codec.c | 5 ++--- proton-c/src/codec/encoder.c | 1 + proton-c/src/posix/io.c | 3 +++ proton-c/src/tests/object.c | 3 ++- proton-c/src/transport/transport.c | 7 +++++-- 5 files changed, 13 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3f64ad79/proton-c/src/codec/codec.c ---------------------------------------------------------------------- diff --git a/proton-c/src/codec/codec.c b/proton-c/src/codec/codec.c index 3a6feb3..49a03a8 100644 --- a/proton-c/src/codec/codec.c +++ b/proton-c/src/codec/codec.c @@ -476,7 +476,7 @@ int pn_data_intern_node(pn_data_t *data, pni_node_t *node) int pn_data_vfill(pn_data_t *data, const char *fmt, va_list ap) { - int err; + int err = 0; while (*fmt) { char code = *(fmt++); if (!code) return 0; @@ -656,7 +656,6 @@ int pn_data_vfill(pn_data_t *data, const char *fmt, va_list ap) pni_node_t *current = pn_data_node(data, data->current); current->down = 0; current->children = 0; - if (err) return err; parent = pn_data_node(data, data->parent); } else { break; @@ -1455,7 +1454,7 @@ int pn_data_put_array(pn_data_t *data, bool described, pn_type_t type) void pni_data_set_array_type(pn_data_t *data, pn_type_t type) { pni_node_t *array = pn_data_current(data); - array->type = type; + if (array) array->type = type; } int pn_data_put_described(pn_data_t *data) http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3f64ad79/proton-c/src/codec/encoder.c ---------------------------------------------------------------------- diff --git a/proton-c/src/codec/encoder.c b/proton-c/src/codec/encoder.c index 7e19953..fd126be 100644 --- a/proton-c/src/codec/encoder.c +++ b/proton-c/src/codec/encoder.c @@ -365,6 +365,7 @@ static int pni_encoder_exit(void *ctx, pn_data_t *data, pni_node_t *node) int err = pn_encoder_writef8(encoder, pn_type2code(encoder, node->type)); if (err) return err; } + // fallthrough case PN_LIST: case PN_MAP: pos = encoder->position; http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3f64ad79/proton-c/src/posix/io.c ---------------------------------------------------------------------- diff --git a/proton-c/src/posix/io.c b/proton-c/src/posix/io.c index d6d0ccd..4a7e883 100644 --- a/proton-c/src/posix/io.c +++ b/proton-c/src/posix/io.c @@ -135,6 +135,7 @@ pn_socket_t pn_listen(pn_io_t *io, const char *host, const char *port) pn_socket_t sock = pn_create_socket(addr->ai_family); if (sock == PN_INVALID_SOCKET) { + freeaddrinfo(addr); pn_i_error_from_errno(io->error, "pn_create_socket"); return PN_INVALID_SOCKET; } @@ -142,6 +143,7 @@ pn_socket_t pn_listen(pn_io_t *io, const char *host, const char *port) int optval = 1; if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval)) == -1) { pn_i_error_from_errno(io->error, "setsockopt"); + freeaddrinfo(addr); close(sock); return PN_INVALID_SOCKET; } @@ -176,6 +178,7 @@ pn_socket_t pn_connect(pn_io_t *io, const char *host, const char *port) pn_socket_t sock = pn_create_socket(addr->ai_family); if (sock == PN_INVALID_SOCKET) { pn_i_error_from_errno(io->error, "pn_create_socket"); + freeaddrinfo(addr); return PN_INVALID_SOCKET; } http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3f64ad79/proton-c/src/tests/object.c ---------------------------------------------------------------------- diff --git a/proton-c/src/tests/object.c b/proton-c/src/tests/object.c index 5a32f60..2b213c5 100644 --- a/proton-c/src/tests/object.c +++ b/proton-c/src/tests/object.c @@ -854,7 +854,8 @@ void test_iterator(void) void *obj; int index = 0; while ((obj = pn_iterator_next(it))) { - assert(obj == pn_list_get(list, index++)); + assert(obj == pn_list_get(list, index)); + ++index; } assert(index == 4); http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/3f64ad79/proton-c/src/transport/transport.c ---------------------------------------------------------------------- diff --git a/proton-c/src/transport/transport.c b/proton-c/src/transport/transport.c index 8b36389..62d4742 100644 --- a/proton-c/src/transport/transport.c +++ b/proton-c/src/transport/transport.c @@ -1166,6 +1166,7 @@ int pn_do_attach(pn_transport_t *transport, uint8_t frame_type, uint16_t channel pn_session_t *ssn = pn_channel_state(transport, channel); if (!ssn) { pn_do_error(transport, "amqp:connection:no-session", "attach without a session"); + if (strheap) free(strheap); return PN_EOS; } pn_link_t *link = pn_find_link(ssn, name, is_sender); @@ -1208,6 +1209,7 @@ int pn_do_attach(pn_transport_t *transport, uint8_t frame_type, uint16_t channel pn_data_clear(link->remote_target.capabilities); err = pn_data_scan(args, "D.[.....D..DL[C]...]", &code, link->remote_target.capabilities); + if (err) return err; if (code == COORDINATOR) { pn_terminus_set_type(rtgt, PN_COORDINATOR); } else { @@ -2718,9 +2720,10 @@ void pn_transport_pop(pn_transport_t *transport, size_t size) int pn_transport_close_head(pn_transport_t *transport) { - size_t pending = pn_transport_pending(transport); + ssize_t pending = pn_transport_pending(transport); pni_close_head(transport); - pn_transport_pop(transport, pending); + if (pending > 0) + pn_transport_pop(transport, pending); return 0; } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
