On Sat, May 9, 2009 at 1:39 AM, Lennart Poettering <[email protected]> wrote: > On Fri, 08.05.09 00:45, Marc-André Lureau ([email protected]) wrote: > >> From: Marc-André Lureau <[email protected]> >> >> 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 _______________________________________________ pulseaudio-discuss mailing list [email protected] https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
