[Spice-devel] [PATCH spice-server 2/2] sound: Use memcpy instead of manually copy volume array
Pavel Grunt
pgrunt at redhat.com
Wed Feb 15 17:14:43 UTC 2017
On Wed, 2017-02-15 at 12:07 -0500, Frediano Ziglio wrote:
> >
> > On Thu, Feb 02, 2017 at 04:29:37PM +0000, Frediano Ziglio wrote:
> > > Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> > > ---
> > > server/sound.c | 6 ++----
> > > 1 file changed, 2 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/server/sound.c b/server/sound.c
> > > index 7c36174..b692646 100644
> > > --- a/server/sound.c
> > > +++ b/server/sound.c
> > > @@ -384,7 +384,6 @@ static int
> > > snd_playback_send_migrate(PlaybackChannelClient *client)
> > > static int snd_send_volume(SndChannelClient *client, uint32_t
> > > cap, int
> > > msg)
> > > {
> > > SpiceMsgAudioVolume *vol;
> > > - uint8_t c;
> > > RedChannelClient *rcc = RED_CHANNEL_CLIENT(client);
> > > SpiceMarshaller *m =
> > > red_channel_client_get_marshaller(rcc);
> > > SndChannel *channel =
> > > SND_CHANNEL(red_channel_client_get_channel(rcc));
> > > @@ -398,9 +397,8 @@ static int snd_send_volume(SndChannelClient
> > > *client,
> > > uint32_t cap, int msg)
> > > st->volume_nchannels * sizeof (uint16_t));
> > > red_channel_client_init_send_data(rcc, msg);
> > > vol->nchannels = st->volume_nchannels;
> > > - for (c = 0; c < st->volume_nchannels; ++c) {
> > > - vol->volume[c] = st->volume[c];
> > > - }
> > > + SPICE_VERIFY(sizeof(vol->volume[0]) == sizeof(st-
> > > >volume[0]));
> > > + memcpy(vol->volume, st->volume, sizeof(st->volume[0]) *
> > > st->volume_nchannels);
> >
> > I think I prefer the loop version (easier to read).
> > If you really insist on having the memcpy version,
> > Acked-by: Christophe Fergeau <cfergeau at redhat.com>
> >
>
> Let's size decide!
>
> Before:
> text data bss dec hex
> filename
> 16588 0 96 16684 412c
> server/.libs/sound.o
>
> After:
> text data bss dec hex
> filename
> 16684 0 96 16780 418c
> server/.libs/sound.o
>
I guess it is due to the SPICE_VERIFY usage
> Damn! Dropped!
>
> Frediano
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list