You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kg...@apache.org on 2015/03/10 18:14:01 UTC
qpid-proton git commit: NO-JIRA: minor cleanups for issues uncovered
by Coverity Scan.
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 <kg...@apache.org>
Authored: Tue Mar 10 13:13:34 2015 -0400
Committer: Ken Giusti <kg...@apache.org>
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: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org