[pulseaudio-commits] [SCM] PulseAudio Sound Server branch, 0.9.15-stable, updated. v0.9.15-35-g9333e89

Colin Guthrie gitmailer-noreply at 0pointer.de
Fri Sep 4 06:18:53 PDT 2009


This is an automated email from the git hooks/post-receive script. It was
generated because of a push to the "PulseAudio Sound Server" repository.

The 0.9.15-stable branch has been updated
      from  a29c6f86e0853ba65013c029c3bd68b7eb65092f (commit)

- Log -----------------------------------------------------------------
9333e89 native: make sure clients cannot trigger an assert by sending us invalid volume info
b10bddf proplist: allow setting of zero-length data properties
35ccb31 protocol-native: compare uint64_t variable with (uint64_t) -1 instead of (size_t) -1 for compat with 32bit archs
81eeb06 pacmd: handle multi word commands in argv[] properly
05f239a memblock: rate limit 'Pool full' message
-----------------------------------------------------------------------

Summary of changes:
 src/pulse/proplist.c            |    5 +++--
 src/pulsecore/memblock.c        |    3 ++-
 src/pulsecore/protocol-native.c |   17 ++++++++++++-----
 src/utils/pacmd.c               |    2 +-
 4 files changed, 18 insertions(+), 9 deletions(-)

-----------------------------------------------------------------------

commit 05f239a74a18fbda2406e2fc306a0f6c1b764d8a
Author: Lennart Poettering <lennart at poettering.net>
Date:   Wed Aug 12 21:40:38 2009 +0200

    memblock: rate limit 'Pool full' message

diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c
index 6cc0ff3..cb70f27 100644
--- a/src/pulsecore/memblock.c
+++ b/src/pulsecore/memblock.c
@@ -255,7 +255,8 @@ static struct mempool_slot* mempool_allocate_slot(pa_mempool *p) {
             slot = (struct mempool_slot*) ((uint8_t*) p->memory.ptr + (p->block_size * (size_t) idx));
 
         if (!slot) {
-            pa_log_info("Pool full");
+            if (pa_log_ratelimit())
+                pa_log_debug("Pool full");
             pa_atomic_inc(&p->stat.n_pool_full);
             return NULL;
         }

commit 81eeb0667edddf587981f99631370dbcd00be3f2
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Aug 14 04:12:36 2009 +0200

    pacmd: handle multi word commands in argv[] properly

diff --git a/src/utils/pacmd.c b/src/utils/pacmd.c
index d94f266..46c44c2 100644
--- a/src/utils/pacmd.c
+++ b/src/utils/pacmd.c
@@ -106,7 +106,7 @@ int main(int argc, char*argv[]) {
             size_t k;
 
             k = PA_MIN(sizeof(ibuf) - ibuf_length, strlen(argv[i]));
-            memcpy(ibuf + ibuf_length, argv[1], k);
+            memcpy(ibuf + ibuf_length, argv[i], k);
             ibuf_length += k;
 
             if (ibuf_length < sizeof(ibuf)) {

commit 35ccb319e6a1e8e7ada88d85ede16612c140fefe
Author: Lennart Poettering <lennart at poettering.net>
Date:   Thu Aug 27 00:04:33 2009 +0200

    protocol-native: compare uint64_t variable with (uint64_t) -1 instead of (size_t) -1 for compat with 32bit archs

diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c
index aecaf71..1ac26c0 100644
--- a/src/pulsecore/protocol-native.c
+++ b/src/pulsecore/protocol-native.c
@@ -1283,7 +1283,8 @@ static void handle_seek(playback_stream *s, int64_t indexw) {
 
             pa_log_debug("Requesting rewind due to end of underrun.");
             pa_sink_input_request_rewind(s->sink_input,
-                                         (size_t) (s->sink_input->thread_info.underrun_for == (size_t) -1 ? 0 : s->sink_input->thread_info.underrun_for),
+                                         (size_t) (s->sink_input->thread_info.underrun_for == (uint64_t) -1 ? 0 :
+                                                   s->sink_input->thread_info.underrun_for),
                                          FALSE, TRUE, FALSE);
         }
 

commit b10bddf99bdda3a776d5f92bcb7c07a2b16b91e0
Author: Lennart Poettering <lennart at poettering.net>
Date:   Thu Aug 27 05:33:45 2009 +0200

    proplist: allow setting of zero-length data properties

diff --git a/src/pulse/proplist.c b/src/pulse/proplist.c
index db4c934..274f708 100644
--- a/src/pulse/proplist.c
+++ b/src/pulse/proplist.c
@@ -236,7 +236,7 @@ int pa_proplist_set(pa_proplist *p, const char *key, const void *data, size_t nb
 
     pa_assert(p);
     pa_assert(key);
-    pa_assert(data);
+    pa_assert(data || nbytes == 0);
 
     if (!property_name_valid(key))
         return -1;
@@ -249,7 +249,8 @@ int pa_proplist_set(pa_proplist *p, const char *key, const void *data, size_t nb
         pa_xfree(prop->value);
 
     prop->value = pa_xmalloc(nbytes+1);
-    memcpy(prop->value, data, nbytes);
+    if (nbytes > 0)
+        memcpy(prop->value, data, nbytes);
     ((char*) prop->value)[nbytes] = 0;
     prop->nbytes = nbytes;
 

commit 9333e89f66231e64aac539c1cc0e5f8398a25a12
Author: Lennart Poettering <lennart at poettering.net>
Date:   Sat Aug 29 06:11:02 2009 +0200

    native: make sure clients cannot trigger an assert by sending us invalid volume info

diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c
index 1ac26c0..d52b872 100644
--- a/src/pulsecore/protocol-native.c
+++ b/src/pulsecore/protocol-native.c
@@ -3322,12 +3322,19 @@ static void command_set_volume(
 
     CHECK_VALIDITY(c->pstream, si || sink || source, tag, PA_ERR_NOENTITY);
 
-    if (sink)
+    if (sink) {
+        CHECK_VALIDITY(c->pstream, pa_cvolume_compatible(&volume, &sink->sample_spec), tag, PA_ERR_INVALID);
+
         pa_sink_set_volume(sink, &volume, TRUE, TRUE, TRUE);
-    else if (source)
+    } else if (source) {
+        CHECK_VALIDITY(c->pstream, pa_cvolume_compatible(&volume, &source->sample_spec), tag, PA_ERR_INVALID);
+
         pa_source_set_volume(source, &volume);
-    else if (si)
+    } else if (si) {
+        CHECK_VALIDITY(c->pstream, pa_cvolume_compatible(&volume, &si->sample_spec), tag, PA_ERR_INVALID);
+
         pa_sink_input_set_volume(si, &volume, TRUE, TRUE);
+    }
 
     pa_pstream_send_simple_ack(c->pstream, tag);
 }
@@ -3368,7 +3375,6 @@ static void command_set_mute(
     switch (command) {
 
         case PA_COMMAND_SET_SINK_MUTE:
-
             if (idx != PA_INVALID_INDEX)
                 sink = pa_idxset_get_by_index(c->protocol->core->sinks, idx);
             else

-- 
hooks/post-receive
PulseAudio Sound Server



More information about the pulseaudio-commits mailing list