[PATCH 1/4] stream-restore: add volume_is_absolute bool in client side

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, May 9, 2009 at 1:39 AM, Lennart Poettering
<lennart at poettering.net> wrote:
> On Fri, 08.05.09 00:45, Marc-Andr? Lureau (marcandre.lureau at gmail.com) wrote:
>
>> From: Marc-Andr? Lureau <marc-andre.lureau at nokia.com>
>>
>> While trying to keep ABI compatibility, I introduce a bitfield for the
>> boolean volume_is_absolute. We can't extend the struct because the
>> API is using pa_ext_stream_restore_info data[] directly..
>
> Looks mostly good.
>
>> @@ -24,6 +24,7 @@
>>
>> ?#include <pulse/context.h>
>> ?#include <pulse/version.h>
>> +#include <pulsecore/macro.h>
>
> No! pulsecore is private API. pulse/ext-stream-restore.h is public
> API. We cannot include this here!
>
>>
>> ?/** \file
>> ? *
>> @@ -39,7 +40,8 @@ typedef struct pa_ext_stream_restore_info {
>> ? ? ?pa_channel_map channel_map; ?/**< The channel map for the volume field, if applicable */
>> ? ? ?pa_cvolume volume; ? ? ? ? ? /**< The volume of the stream when it was seen last, if applicable and saved */
>> ? ? ?const char *device; ? ? ? ? ?/**< The sink/source of the stream when it was last seen, if applicable and saved */
>> - ? ?int mute; ? ? ? ? ? ? ? ? ? ?/**< The boolean mute state of the stream when it was last seen, if applicable and saved */
>> + ? ?int mute:1; ? ? ? ? ? ? ? ? ?/**< The boolean mute state of the stream when it was last seen, if applicable and saved */
>> + ? ?pa_bool_t volume_is_absolute:1; /**< True if the volume is absolute, if applicable and saved. ?\since 0.9.16 */
>> ?} pa_ext_stream_restore_info;
>
> pa_bool_t is used internally only. In the public API we only expose
> ints. pa_bool_t is defined as _Bool on C99 and int on other
> compilers. This discrepancy should not be visible to outside due to
> ABI stability issues.

Minor comment; if you include stdbool.h you can use 'bool' which IMHO
is less ugly than _Bool. And I wonder what's the point of pa_bool_t...
if the compiler doesn't have stdbool.h, then just define 'bool' as you
would define pa_bool_t.

-- 
Felipe Contreras



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux