Re: [PATCH] Remove X == TRUE tests for non-boolean values

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

 



On Mon, Feb 27, 2017 at 06:58:47AM -0500, Frediano Ziglio wrote:
> > 
> > Using X == TRUE is fragile, since the input value is a uint8_t. It would be
> > surprising if the value was set to 2 or 0xFF and the test failed.
> > 
> > Signed-off-by: Christophe de Dinechin <dinechin@xxxxxxxxxx>
> 
> Acked-by: Frediano Ziglio <fziglio@xxxxxxxxxx>

This apparently is going to cause warnings with gcc 7, see
https://www.redhat.com/archives/libvir-list/2017-February/msg01199.html

if (dcc->priv->surface_client_created[surface_id] != 0) {} should work,
or
diff --git a/server/dcc-private.h b/server/dcc-private.h
index 64b32a7..1cf3b0d 100644
--- a/server/dcc-private.h
+++ b/server/dcc-private.h
@@ -51,7 +51,7 @@ struct DisplayChannelClientPrivate
         int num_pixmap_cache_items;
     } send_data;

-    uint8_t surface_client_created[NUM_SURFACES];
+    bool surface_client_created[NUM_SURFACES];
     QRegion surface_client_lossy_region[NUM_SURFACES];

     StreamAgent stream_agents[NUM_STREAMS];

which seems to be a more accurate type for 'surface_client_created'.

Chistophe



> 
> > ---
> >  server/dcc.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/server/dcc.c b/server/dcc.c
> > index afe37b1..7cfa72b 100644
> > --- a/server/dcc.c
> > +++ b/server/dcc.c
> > @@ -398,7 +398,7 @@ static void
> > add_drawable_surface_images(DisplayChannelClient *dcc, Drawable *dra
> >  
> >          surface_id = drawable->surface_deps[x];
> >          if (surface_id != -1) {
> > -            if (dcc->priv->surface_client_created[surface_id] == TRUE) {
> > +            if (dcc->priv->surface_client_created[surface_id]) {
> >                  continue;
> >              }
> >              dcc_create_surface(dcc, surface_id);
> > @@ -407,7 +407,7 @@ static void
> > add_drawable_surface_images(DisplayChannelClient *dcc, Drawable *dra
> >          }
> >      }
> >  
> > -    if (dcc->priv->surface_client_created[drawable->surface_id] == TRUE) {
> > +    if (dcc->priv->surface_client_created[drawable->surface_id]) {
> >          return;
> >      }
> >  
> 
> Frediano
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/spice-devel

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]