[Spice-commits] 3 commits - common/canvas_base.h common/ring.h

Frediano Ziglio fziglio at kemper.freedesktop.org
Tue Nov 7 13:44:12 UTC 2017


 common/canvas_base.h |    4 ++--
 common/ring.h        |   21 +++++----------------
 2 files changed, 7 insertions(+), 18 deletions(-)

New commits:
commit 45e2844845242b32b2bd8956da0dfffa91c0d856
Author: Frediano Ziglio <fziglio at redhat.com>
Date:   Tue Nov 7 10:57:33 2017 +0000

    canvas_base: Allow to specify constant operations
    
    There's no need for the canvas operations to be changed.
    This allows without casts to have the operation structures
    constants in the code.
    This potentially allows to reduce attack surface having some
    more data constant instead or read/write.
    
    Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
    Acked-by: Christophe de Dinechin <dinechin at redhat.com>

diff --git a/common/canvas_base.h b/common/canvas_base.h
index 78e6368..2d3c35b 100644
--- a/common/canvas_base.h
+++ b/common/canvas_base.h
@@ -60,7 +60,7 @@ typedef struct {
 } SpiceImageCacheOps;
 
 struct _SpiceImageCache {
-  SpiceImageCacheOps *ops;
+  const SpiceImageCacheOps *ops;
 };
 
 typedef struct {
@@ -69,7 +69,7 @@ typedef struct {
 } SpiceImageSurfacesOps;
 
 struct _SpiceImageSurfaces {
- SpiceImageSurfacesOps *ops;
+ const SpiceImageSurfacesOps *ops;
 };
 
 typedef struct {
commit 72ae9b29719d40982a7fe44950768d14cd411528
Author: Frediano Ziglio <fziglio at redhat.com>
Date:   Tue Nov 7 10:50:08 2017 +0000

    ring: Remove short living temporary variable
    
    Just a style change, the variable does not help readability.
    
    Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
    Acked-by: Christophe de Dinechin <dinechin at redhat.com>

diff --git a/common/ring.h b/common/ring.h
index 036c098..1ed3576 100644
--- a/common/ring.h
+++ b/common/ring.h
@@ -82,28 +82,22 @@ static inline void ring_remove(RingItem *item)
 
 static inline RingItem *ring_get_head(Ring *ring)
 {
-    RingItem *ret;
-
     spice_assert(ring->next != NULL && ring->prev != NULL);
 
     if (ring_is_empty(ring)) {
         return NULL;
     }
-    ret = ring->next;
-    return ret;
+    return ring->next;
 }
 
 static inline RingItem *ring_get_tail(Ring *ring)
 {
-    RingItem *ret;
-
     spice_assert(ring->next != NULL && ring->prev != NULL);
 
     if (ring_is_empty(ring)) {
         return NULL;
     }
-    ret = ring->prev;
-    return ret;
+    return ring->prev;
 }
 
 static inline RingItem *ring_next(Ring *ring, RingItem *pos)
commit c208ca85cd313fab9dff33266dde6441f7c67b24
Author: Frediano Ziglio <fziglio at redhat.com>
Date:   Tue Nov 7 10:48:22 2017 +0000

    ring: Remove __ring_remove function
    
    Is just used by ring_remove, no reason to have it.
    
    Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
    Acked-by: Christophe de Dinechin <dinechin at redhat.com>

diff --git a/common/ring.h b/common/ring.h
index 4b0e313..036c098 100644
--- a/common/ring.h
+++ b/common/ring.h
@@ -70,19 +70,14 @@ static inline void ring_add_before(RingItem *item, RingItem *pos)
     ring_add(pos->prev, item);
 }
 
-static inline void __ring_remove(RingItem *item)
-{
-    item->next->prev = item->prev;
-    item->prev->next = item->next;
-    item->prev = item->next = NULL;
-}
-
 static inline void ring_remove(RingItem *item)
 {
     spice_assert(item->next != NULL && item->prev != NULL);
     spice_assert(item->next != item);
 
-    __ring_remove(item);
+    item->next->prev = item->prev;
+    item->prev->next = item->next;
+    item->prev = item->next = NULL;
 }
 
 static inline RingItem *ring_get_head(Ring *ring)


More information about the Spice-commits mailing list