diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-01-20 02:15:43 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-01-20 02:15:43 +0100 |
commit | b23efc0a4d409792c49110d01377f4d76f3aef25 (patch) | |
tree | 666973ddf3f2a6c2233195266928dc93382e4cf0 /src | |
parent | 47a2f9e3da9a66a308f311340410640f2f4cb28f (diff) |
add missing eof checks
Diffstat (limited to 'src')
-rw-r--r-- | src/pulse/context.c | 3 | ||||
-rw-r--r-- | src/pulsecore/protocol-native.c | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/pulse/context.c b/src/pulse/context.c index 3145d9c8..d41e62e2 100644 --- a/src/pulse/context.c +++ b/src/pulse/context.c @@ -366,7 +366,8 @@ int pa_context_handle_error(pa_context *c, uint32_t command, pa_tagstruct *t, pa if (command == PA_COMMAND_ERROR) { pa_assert(t); - if (pa_tagstruct_getu32(t, &err) < 0) { + if (pa_tagstruct_getu32(t, &err) < 0 || + !pa_tagstruct_eof(t)) { pa_context_fail(c, PA_ERR_PROTOCOL); return -1; } diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c index a49d5dfb..f1735a78 100644 --- a/src/pulsecore/protocol-native.c +++ b/src/pulsecore/protocol-native.c @@ -2484,7 +2484,9 @@ static void command_create_upload_stream(pa_pdispatch *pd, uint32_t command, uin p = pa_proplist_new(); - if (c->version >= 13 && pa_tagstruct_get_proplist(t, p) < 0) { + if ((c->version >= 13 && pa_tagstruct_get_proplist(t, p) < 0) || + !pa_tagstruct_eof(t)) { + protocol_error(c); pa_proplist_free(p); return; |