diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/pulse/context.h | 1 | ||||
| -rw-r--r-- | src/pulse/introspect.h | 12 | ||||
| -rw-r--r-- | src/pulse/sample.h | 7 | ||||
| -rw-r--r-- | src/pulse/scache.c | 14 | ||||
| -rw-r--r-- | src/pulse/scache.h | 4 | ||||
| -rw-r--r-- | src/pulse/stream.h | 2 | ||||
| -rw-r--r-- | src/pulse/volume.c | 52 | ||||
| -rw-r--r-- | src/pulse/volume.h | 9 | ||||
| -rw-r--r-- | src/pulsecore/cli-command.c | 12 | ||||
| -rw-r--r-- | src/pulsecore/core-scache.c | 4 | ||||
| -rw-r--r-- | src/pulsecore/memblock.c | 2 | ||||
| -rw-r--r-- | src/pulsecore/vector.h | 3 | ||||
| -rw-r--r-- | src/utils/pactl.c | 4 | 
13 files changed, 76 insertions, 50 deletions
diff --git a/src/pulse/context.h b/src/pulse/context.h index cd129313..670b23e8 100644 --- a/src/pulse/context.h +++ b/src/pulse/context.h @@ -267,7 +267,6 @@ pa_time_event* pa_context_rttime_new(pa_context *c, pa_usec_t usec, pa_time_even      for mainloop->time_restart). \since 0.9.16 */  void pa_context_rttime_restart(pa_context *c, pa_time_event *e, pa_usec_t usec); -  PA_C_DECL_END  #endif diff --git a/src/pulse/introspect.h b/src/pulse/introspect.h index ee982100..68cfc874 100644 --- a/src/pulse/introspect.h +++ b/src/pulse/introspect.h @@ -331,6 +331,12 @@ pa_operation* pa_context_set_source_mute_by_index(pa_context *c, uint32_t idx, i  /** Set the mute switch of a source device specified by its name */  pa_operation* pa_context_set_source_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata); +/** Suspend/Resume a source. \since 0.9.7 */ +pa_operation* pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void* userdata); + +/** Suspend/Resume a source. If idx is PA_INVALID_INDEX all sources will be suspended. \since 0.9.7 */ +pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata); +  /** Change the profile of a source. \since 0.9.16 */  pa_operation* pa_context_set_source_port_by_index(pa_context *c, uint32_t idx, const char*port, pa_context_success_cb_t cb, void *userdata); @@ -557,12 +563,6 @@ pa_operation* pa_context_move_source_output_by_name(pa_context *c, uint32_t idx,  /** Move the specified source output to a different source. \since 0.9.5 */  pa_operation* pa_context_move_source_output_by_index(pa_context *c, uint32_t idx, uint32_t source_idx, pa_context_success_cb_t cb, void* userdata); -/** Suspend/Resume a source. \since 0.9.7 */ -pa_operation* pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void* userdata); - -/** Suspend/Resume a source. If idx is PA_INVALID_INDEX all sources will be suspended. \since 0.9.7 */ -pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata); -  /** Kill a source output. */  pa_operation* pa_context_kill_source_output(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata); diff --git a/src/pulse/sample.h b/src/pulse/sample.h index 53d7dea3..7a4a55a0 100644 --- a/src/pulse/sample.h +++ b/src/pulse/sample.h @@ -302,6 +302,13 @@ pa_sample_format_t pa_parse_sample_format(const char *format) PA_GCC_PURE;  /** Pretty print a sample type specification to a string */  char* pa_sample_spec_snprint(char *s, size_t l, const pa_sample_spec *spec); +/** Maximum required string length for pa_bytes_snprint(). Please note + * that this value can change with any release without warning and + * without being considered API or ABI breakage. You should not use + * this definition anywhere where it might become part of an + * ABI. \since 0.9.16 */ +#define PA_BYTES_SNPRINT_MAX 11 +  /** Pretty print a byte size value. (i.e. "2.5 MiB") */  char* pa_bytes_snprint(char *s, size_t l, unsigned v); diff --git a/src/pulse/scache.c b/src/pulse/scache.c index 77f60d72..27da6887 100644 --- a/src/pulse/scache.c +++ b/src/pulse/scache.c @@ -187,7 +187,7 @@ pa_operation *pa_context_play_sample(pa_context *c, const char *name, const char      pa_tagstruct_putu32(t, PA_INVALID_INDEX);      pa_tagstruct_puts(t, dev); -    if (volume == (pa_volume_t) -1 && c->version < 15) +    if (volume == PA_VOLUME_INVALID && c->version < 15)          volume = PA_VOLUME_NORM;      pa_tagstruct_putu32(t, volume); @@ -216,7 +216,6 @@ pa_operation *pa_context_play_sample_with_proplist(pa_context *c, const char *na      PA_CHECK_VALIDITY_RETURN_NULL(c, c->state == PA_CONTEXT_READY, PA_ERR_BADSTATE);      PA_CHECK_VALIDITY_RETURN_NULL(c, name && *name, PA_ERR_INVALID);      PA_CHECK_VALIDITY_RETURN_NULL(c, !dev || *dev, PA_ERR_INVALID); -    PA_CHECK_VALIDITY_RETURN_NULL(c, p, PA_ERR_INVALID);      PA_CHECK_VALIDITY_RETURN_NULL(c, c->version >= 13, PA_ERR_NOTSUPPORTED);      o = pa_operation_new(c, NULL, (pa_operation_cb_t) cb, userdata); @@ -228,12 +227,19 @@ pa_operation *pa_context_play_sample_with_proplist(pa_context *c, const char *na      pa_tagstruct_putu32(t, PA_INVALID_INDEX);      pa_tagstruct_puts(t, dev); -    if (volume == (pa_volume_t) -1 && c->version < 15) +    if (volume == PA_VOLUME_INVALID && c->version < 15)          volume = PA_VOLUME_NORM;      pa_tagstruct_putu32(t, volume);      pa_tagstruct_puts(t, name); -    pa_tagstruct_put_proplist(t, p); + +    if (p) +        pa_tagstruct_put_proplist(t, p); +    else { +        p = pa_proplist_new(); +        pa_tagstruct_put_proplist(t, p); +        pa_proplist_free(p); +    }      pa_pstream_send_tagstruct(c->pstream, t);      pa_pdispatch_register_reply(c->pdispatch, tag, DEFAULT_TIMEOUT, play_sample_with_proplist_ack_callback, pa_operation_ref(o), (pa_free_cb_t) pa_operation_unref); diff --git a/src/pulse/scache.h b/src/pulse/scache.h index cd579d2e..31cf7b01 100644 --- a/src/pulse/scache.h +++ b/src/pulse/scache.h @@ -101,7 +101,7 @@ pa_operation* pa_context_play_sample(          pa_context *c               /**< Context */,          const char *name            /**< Name of the sample to play */,          const char *dev             /**< Sink to play this sample on */, -        pa_volume_t volume          /**< Volume to play this sample with. Starting with 0.9.15 you may pass here (pa_volume_t) -1 which will leave the decision about the volume to the server side which is a good idea. */ , +        pa_volume_t volume          /**< Volume to play this sample with. Starting with 0.9.15 you may pass here PA_VOLUME_INVALID which will leave the decision about the volume to the server side which is a good idea. */ ,          pa_context_success_cb_t cb  /**< Call this function after successfully starting playback, or NULL */,          void *userdata              /**< Userdata to pass to the callback */); @@ -113,7 +113,7 @@ pa_operation* pa_context_play_sample_with_proplist(          pa_context *c                   /**< Context */,          const char *name                /**< Name of the sample to play */,          const char *dev                 /**< Sink to play this sample on */, -        pa_volume_t volume              /**< Volume to play this sample with. Starting with 0.9.15 you may pass here (pa_volume_t) -1 which will leave the decision about the volume to the server side which is a good idea.  */ , +        pa_volume_t volume              /**< Volume to play this sample with. Starting with 0.9.15 you may pass here PA_VOLUME_INVALID which will leave the decision about the volume to the server side which is a good idea.  */ ,          pa_proplist *proplist           /**< Property list for this sound. The property list of the cached entry will be merged into this property list */,          pa_context_play_sample_cb_t cb  /**< Call this function after successfully starting playback, or NULL */,          void *userdata                  /**< Userdata to pass to the callback */); diff --git a/src/pulse/stream.h b/src/pulse/stream.h index 8a08421f..21dd0a85 100644 --- a/src/pulse/stream.h +++ b/src/pulse/stream.h @@ -319,7 +319,7 @@ typedef struct pa_stream pa_stream;  typedef void (*pa_stream_success_cb_t) (pa_stream*s, int success, void *userdata);  /** A generic request callback */ -typedef void (*pa_stream_request_cb_t)(pa_stream *p, size_t bytes, void *userdata); +typedef void (*pa_stream_request_cb_t)(pa_stream *p, size_t nbytes, void *userdata);  /** A generic notification callback */  typedef void (*pa_stream_notify_cb_t)(pa_stream *p, void *userdata); diff --git a/src/pulse/volume.c b/src/pulse/volume.c index 234c3f72..47bccad2 100644 --- a/src/pulse/volume.c +++ b/src/pulse/volume.c @@ -64,7 +64,7 @@ pa_cvolume* pa_cvolume_init(pa_cvolume *a) {      a->channels = 0;      for (c = 0; c < PA_CHANNELS_MAX; c++) -        a->values[c] = (pa_volume_t) -1; +        a->values[c] = PA_VOLUME_INVALID;      return a;  } @@ -201,6 +201,9 @@ pa_volume_t pa_cvolume_min_mask(const pa_cvolume *a, const pa_channel_map *cm, p  pa_volume_t pa_sw_volume_multiply(pa_volume_t a, pa_volume_t b) { +    pa_return_val_if_fail(a != PA_VOLUME_INVALID, PA_VOLUME_INVALID); +    pa_return_val_if_fail(b != PA_VOLUME_INVALID, PA_VOLUME_INVALID); +      /* cbrt((a/PA_VOLUME_NORM)^3*(b/PA_VOLUME_NORM)^3)*PA_VOLUME_NORM = a*b/PA_VOLUME_NORM */      return (pa_volume_t) (((uint64_t) a * (uint64_t) b + (uint64_t) PA_VOLUME_NORM / 2ULL) / (uint64_t) PA_VOLUME_NORM); @@ -208,6 +211,9 @@ pa_volume_t pa_sw_volume_multiply(pa_volume_t a, pa_volume_t b) {  pa_volume_t pa_sw_volume_divide(pa_volume_t a, pa_volume_t b) { +    pa_return_val_if_fail(a != PA_VOLUME_INVALID, PA_VOLUME_INVALID); +    pa_return_val_if_fail(b != PA_VOLUME_INVALID, PA_VOLUME_INVALID); +      if (b <= PA_VOLUME_MUTED)          return 0; @@ -232,6 +238,8 @@ pa_volume_t pa_sw_volume_from_dB(double dB) {  double pa_sw_volume_to_dB(pa_volume_t v) { +    pa_return_val_if_fail(v != PA_VOLUME_INVALID, PA_DECIBEL_MININFTY); +      if (v <= PA_VOLUME_MUTED)          return PA_DECIBEL_MININFTY; @@ -259,6 +267,8 @@ pa_volume_t pa_sw_volume_from_linear(double v) {  double pa_sw_volume_to_linear(pa_volume_t v) {      double f; +    pa_return_val_if_fail(v != PA_VOLUME_INVALID, 0.0); +      if (v <= PA_VOLUME_MUTED)          return 0.0; @@ -307,7 +317,7 @@ char *pa_volume_snprint(char *s, size_t l, pa_volume_t v) {      pa_init_i18n(); -    if (v == (pa_volume_t) -1) { +    if (v == PA_VOLUME_INVALID) {          pa_snprintf(s, l, _("(invalid)"));          return s;      } @@ -357,7 +367,7 @@ char *pa_sw_volume_snprint_dB(char *s, size_t l, pa_volume_t v) {      pa_init_i18n(); -    if (v == (pa_volume_t) -1) { +    if (v == PA_VOLUME_INVALID) {          pa_snprintf(s, l, _("(invalid)"));          return s;      } @@ -374,6 +384,7 @@ int pa_cvolume_channels_equal_to(const pa_cvolume *a, pa_volume_t v) {      pa_assert(a);      pa_return_val_if_fail(pa_cvolume_valid(a), 0); +    pa_return_val_if_fail(v != PA_VOLUME_INVALID, 0);      for (c = 0; c < a->channels; c++)          if (a->values[c] != v) @@ -407,6 +418,7 @@ pa_cvolume *pa_sw_cvolume_multiply_scalar(pa_cvolume *dest, const pa_cvolume *a,      pa_assert(a);      pa_return_val_if_fail(pa_cvolume_valid(a), NULL); +    pa_return_val_if_fail(b != PA_VOLUME_INVALID, NULL);      for (i = 0; i < a->channels; i++)          dest->values[i] = pa_sw_volume_multiply(a->values[i], b); @@ -441,6 +453,7 @@ pa_cvolume *pa_sw_cvolume_divide_scalar(pa_cvolume *dest, const pa_cvolume *a, p      pa_assert(a);      pa_return_val_if_fail(pa_cvolume_valid(a), NULL); +    pa_return_val_if_fail(b != PA_VOLUME_INVALID, NULL);      for (i = 0; i < a->channels; i++)          dest->values[i] = pa_sw_volume_divide(a->values[i], b); @@ -459,7 +472,7 @@ int pa_cvolume_valid(const pa_cvolume *v) {          return 0;      for (c = 0; c < v->channels; c++) -        if (v->values[c] == (pa_volume_t) -1) +        if (v->values[c] == PA_VOLUME_INVALID)              return 0;      return 1; @@ -497,8 +510,6 @@ pa_cvolume *pa_cvolume_remap(pa_cvolume *v, const pa_channel_map *from, const pa      pa_assert(from);      pa_assert(to); -    pa_return_val_if_fail(pa_cvolume_valid(v), NULL); -    pa_return_val_if_fail(pa_channel_map_valid(from), NULL);      pa_return_val_if_fail(pa_channel_map_valid(to), NULL);      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, from), NULL); @@ -600,8 +611,6 @@ float pa_cvolume_get_balance(const pa_cvolume *v, const pa_channel_map *map) {      pa_assert(v);      pa_assert(map); -    pa_return_val_if_fail(pa_cvolume_valid(v), 0.0f); -    pa_return_val_if_fail(pa_channel_map_valid(map), 0.0f);      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, map), 0.0f);      if (!pa_channel_map_can_balance(map)) @@ -633,12 +642,10 @@ pa_cvolume* pa_cvolume_set_balance(pa_cvolume *v, const pa_channel_map *map, flo      pa_assert(map);      pa_assert(v); -    pa_assert(new_balance >= -1.0f); -    pa_assert(new_balance <= 1.0f); -    pa_return_val_if_fail(pa_cvolume_valid(v), NULL); -    pa_return_val_if_fail(pa_channel_map_valid(map), NULL);      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, map), NULL); +    pa_return_val_if_fail(new_balance >= -1.0f, NULL); +    pa_return_val_if_fail(new_balance <= 1.0f, NULL);      if (!pa_channel_map_can_balance(map))          return v; @@ -679,7 +686,7 @@ pa_cvolume* pa_cvolume_scale(pa_cvolume *v, pa_volume_t max) {      pa_assert(v);      pa_return_val_if_fail(pa_cvolume_valid(v), NULL); -    pa_return_val_if_fail(max != (pa_volume_t) -1, NULL); +    pa_return_val_if_fail(max != PA_VOLUME_INVALID, NULL);      t = pa_cvolume_max(v); @@ -698,8 +705,12 @@ pa_cvolume* pa_cvolume_scale_mask(pa_cvolume *v, pa_volume_t max, pa_channel_map      pa_assert(v); -    pa_return_val_if_fail(pa_cvolume_valid(v), NULL); -    pa_return_val_if_fail(max != (pa_volume_t) -1, NULL); +    pa_return_val_if_fail(max != PA_VOLUME_INVALID, NULL); + +    if (!cm) +        return pa_cvolume_scale(v, max); + +    pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, cm), NULL);      t = pa_cvolume_max_mask(v, cm, mask); @@ -750,8 +761,6 @@ float pa_cvolume_get_fade(const pa_cvolume *v, const pa_channel_map *map) {      pa_assert(v);      pa_assert(map); -    pa_return_val_if_fail(pa_cvolume_valid(v), 0.0f); -    pa_return_val_if_fail(pa_channel_map_valid(map), 0.0f);      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, map), 0.0f);      if (!pa_channel_map_can_fade(map)) @@ -774,12 +783,10 @@ pa_cvolume* pa_cvolume_set_fade(pa_cvolume *v, const pa_channel_map *map, float      pa_assert(map);      pa_assert(v); -    pa_assert(new_fade >= -1.0f); -    pa_assert(new_fade <= 1.0f); -    pa_return_val_if_fail(pa_cvolume_valid(v), NULL); -    pa_return_val_if_fail(pa_channel_map_valid(map), NULL);      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(v, map), NULL); +    pa_return_val_if_fail(new_fade >= -1.0f, NULL); +    pa_return_val_if_fail(new_fade <= 1.0f, NULL);      if (!pa_channel_map_can_fade(map))          return v; @@ -827,6 +834,7 @@ pa_cvolume* pa_cvolume_set_position(      pa_return_val_if_fail(pa_cvolume_compatible_with_channel_map(cv, map), NULL);      pa_return_val_if_fail(t < PA_CHANNEL_POSITION_MAX, NULL); +    pa_return_val_if_fail(v != PA_VOLUME_INVALID, NULL);      for (c = 0; c < map->channels; c++)          if (map->map[c] == t) { @@ -883,6 +891,7 @@ pa_cvolume* pa_cvolume_inc(pa_cvolume *v, pa_volume_t inc) {      pa_assert(v);      pa_return_val_if_fail(pa_cvolume_valid(v), NULL); +    pa_return_val_if_fail(inc != PA_VOLUME_INVALID, NULL);      m = pa_cvolume_max(v); @@ -900,6 +909,7 @@ pa_cvolume* pa_cvolume_dec(pa_cvolume *v, pa_volume_t dec) {      pa_assert(v);      pa_return_val_if_fail(pa_cvolume_valid(v), NULL); +    pa_return_val_if_fail(dec != PA_VOLUME_INVALID, NULL);      m = pa_cvolume_max(v); diff --git a/src/pulse/volume.h b/src/pulse/volume.h index 543b0af1..c964020a 100644 --- a/src/pulse/volume.h +++ b/src/pulse/volume.h @@ -106,11 +106,14 @@ typedef uint32_t pa_volume_t;  /** Normal volume (100%, 0 dB) */  #define PA_VOLUME_NORM ((pa_volume_t) 0x10000U) -/** Muted volume (0%, -inf dB) */ +/** Muted (minimal valid) volume (0%, -inf dB) */  #define PA_VOLUME_MUTED ((pa_volume_t) 0U) -/** Maximum volume we can store. \since 0.9.15 */ -#define PA_VOLUME_MAX ((pa_volume_t) UINT32_MAX) +/** Maximum valid volume we can store. \since 0.9.15 */ +#define PA_VOLUME_MAX ((pa_volume_t) UINT32_MAX-1) + +/** Special 'invalid' volume. \since 0.9.16 */ +#define PA_VOLUME_INVALID ((pa_volume_t) UINT32_MAX)  /** A structure encapsulating a per-channel volume */  typedef struct pa_cvolume { diff --git a/src/pulsecore/cli-command.c b/src/pulsecore/cli-command.c index 3c94960c..143db3b2 100644 --- a/src/pulsecore/cli-command.c +++ b/src/pulsecore/cli-command.c @@ -328,7 +328,7 @@ static int pa_cli_command_source_outputs(pa_core *c, pa_tokenizer *t, pa_strbuf  static int pa_cli_command_stat(pa_core *c, pa_tokenizer *t, pa_strbuf *buf, pa_bool_t *fail) {      char ss[PA_SAMPLE_SPEC_SNPRINT_MAX];      char cm[PA_CHANNEL_MAP_SNPRINT_MAX]; -    char s[256]; +    char bytes[PA_BYTES_SNPRINT_MAX];      const pa_mempool_stat *stat;      unsigned k;      pa_sink *def_sink; @@ -352,22 +352,22 @@ static int pa_cli_command_stat(pa_core *c, pa_tokenizer *t, pa_strbuf *buf, pa_b      pa_strbuf_printf(buf, "Memory blocks currently allocated: %u, size: %s.\n",                       (unsigned) pa_atomic_load(&stat->n_allocated), -                     pa_bytes_snprint(s, sizeof(s), (unsigned) pa_atomic_load(&stat->allocated_size))); +                     pa_bytes_snprint(bytes, sizeof(bytes), (unsigned) pa_atomic_load(&stat->allocated_size)));      pa_strbuf_printf(buf, "Memory blocks allocated during the whole lifetime: %u, size: %s.\n",                       (unsigned) pa_atomic_load(&stat->n_accumulated), -                     pa_bytes_snprint(s, sizeof(s), (unsigned) pa_atomic_load(&stat->accumulated_size))); +                     pa_bytes_snprint(bytes, sizeof(bytes), (unsigned) pa_atomic_load(&stat->accumulated_size)));      pa_strbuf_printf(buf, "Memory blocks imported from other processes: %u, size: %s.\n",                       (unsigned) pa_atomic_load(&stat->n_imported), -                     pa_bytes_snprint(s, sizeof(s), (unsigned) pa_atomic_load(&stat->imported_size))); +                     pa_bytes_snprint(bytes, sizeof(bytes), (unsigned) pa_atomic_load(&stat->imported_size)));      pa_strbuf_printf(buf, "Memory blocks exported to other processes: %u, size: %s.\n",                       (unsigned) pa_atomic_load(&stat->n_exported), -                     pa_bytes_snprint(s, sizeof(s), (unsigned) pa_atomic_load(&stat->exported_size))); +                     pa_bytes_snprint(bytes, sizeof(bytes), (unsigned) pa_atomic_load(&stat->exported_size)));      pa_strbuf_printf(buf, "Total sample cache size: %s.\n", -                     pa_bytes_snprint(s, sizeof(s), (unsigned) pa_scache_total_size(c))); +                     pa_bytes_snprint(bytes, sizeof(bytes), (unsigned) pa_scache_total_size(c)));      pa_strbuf_printf(buf, "Default sample spec: %s\n",                       pa_sample_spec_snprint(ss, sizeof(ss), &c->default_sample_spec)); diff --git a/src/pulsecore/core-scache.c b/src/pulsecore/core-scache.c index fde12ecf..1fb81d0d 100644 --- a/src/pulsecore/core-scache.c +++ b/src/pulsecore/core-scache.c @@ -335,12 +335,12 @@ int pa_scache_play_item(pa_core *c, const char *name, pa_sink *sink, pa_volume_t      pass_volume = TRUE; -    if (e->volume_is_set && volume != (pa_volume_t) -1) { +    if (e->volume_is_set && volume != PA_VOLUME_INVALID) {          pa_cvolume_set(&r, e->sample_spec.channels, volume);          pa_sw_cvolume_multiply(&r, &r, &e->volume);      } else if (e->volume_is_set)          r = e->volume; -    else if (volume != (pa_volume_t) -1) +    else if (volume != PA_VOLUME_INVALID)          pa_cvolume_set(&r, e->sample_spec.channels, volume);      else          pass_volume = FALSE; diff --git a/src/pulsecore/memblock.c b/src/pulsecore/memblock.c index 441b397b..0e40d12b 100644 --- a/src/pulsecore/memblock.c +++ b/src/pulsecore/memblock.c @@ -694,7 +694,7 @@ static void memblock_replace_import(pa_memblock *b) {  pa_mempool* pa_mempool_new(pa_bool_t shared, size_t size) {      pa_mempool *p; -    char t1[64], t2[64]; +    char t1[PA_BYTES_SNPRINT_MAX], t2[PA_BYTES_SNPRINT_MAX];      p = pa_xnew(pa_mempool, 1); diff --git a/src/pulsecore/vector.h b/src/pulsecore/vector.h index 924e3cb8..9de3b8cd 100644 --- a/src/pulsecore/vector.h +++ b/src/pulsecore/vector.h @@ -23,7 +23,8 @@  #include <inttypes.h>  /* First, define HAVE_VECTOR if we have the gcc vector extensions at all */ -#if defined(__SSE2__) || defined(__ALTIVEC__) +#if defined(__SSE2__) +    /* || defined(__ALTIVEC__)*/  #define HAVE_VECTOR diff --git a/src/utils/pactl.c b/src/utils/pactl.c index b8f4ea75..141ab5b1 100644 --- a/src/utils/pactl.c +++ b/src/utils/pactl.c @@ -130,7 +130,7 @@ static void complete_action(void) {  }  static void stat_callback(pa_context *c, const pa_stat_info *i, void *userdata) { -    char s[128]; +    char s[PA_BYTES_SNPRINT_MAX];      if (!i) {          pa_log(_("Failed to get statistics: %s"), pa_strerror(pa_context_errno(c)));          quit(1); @@ -598,7 +598,7 @@ static void get_source_output_info_callback(pa_context *c, const pa_source_outpu  }  static void get_sample_info_callback(pa_context *c, const pa_sample_info *i, int is_last, void *userdata) { -    char t[32], s[PA_SAMPLE_SPEC_SNPRINT_MAX], cv[PA_CVOLUME_SNPRINT_MAX], cvdb[PA_SW_CVOLUME_SNPRINT_DB_MAX], cm[PA_CHANNEL_MAP_SNPRINT_MAX]; +    char t[PA_BYTES_SNPRINT_MAX], s[PA_SAMPLE_SPEC_SNPRINT_MAX], cv[PA_CVOLUME_SNPRINT_MAX], cvdb[PA_SW_CVOLUME_SNPRINT_DB_MAX], cm[PA_CHANNEL_MAP_SNPRINT_MAX];      char *pl;      if (is_last < 0) {  | 
