[Spice-devel] [spice-server 1/3] Remove duplicate typedef from headers

Frediano Ziglio fziglio at redhat.com
Wed Mar 30 13:15:07 UTC 2016


> 
> This is causing compile errors with older gcc versions.
> 
> reds.h includes reds-stream.h through red-channel.h so it will get the
> RedsState typedef this way.
> 
> red-qxl.h includes spice-qxl.h through red-channel.h and then spice.h,
> so it will get the QXLState typedef this way.
> ---
>  server/red-qxl.h | 2 --
>  server/reds.h    | 2 --
>  2 files changed, 4 deletions(-)
> 
> diff --git a/server/red-qxl.h b/server/red-qxl.h
> index b1ebbe1..ce80f97 100644
> --- a/server/red-qxl.h
> +++ b/server/red-qxl.h
> @@ -20,8 +20,6 @@
>  
>  #include "red-channel.h"
>  
> -typedef struct QXLState QXLState;
> -
>  typedef struct AsyncCommand AsyncCommand;
>  
>  void red_qxl_init(SpiceServer *reds, QXLInstance *qxl);

This is defined in public headers already so this hunk is fine.

> diff --git a/server/reds.h b/server/reds.h
> index 5966dc3..c2968c2 100644
> --- a/server/reds.h
> +++ b/server/reds.h
> @@ -31,8 +31,6 @@
>  #include "main-dispatcher.h"
>  #include "migration-protocol.h"
>  
> -typedef struct RedsState RedsState;
> -
>  static inline QXLInterface * qxl_get_interface(QXLInstance *qxl)
>  {
>      return SPICE_CONTAINEROF(qxl->base.sif, QXLInterface, base);

This is defined in reds-stream.h and reds.h, I think be best place is
reds.h as it's the global state implemented in reds.h

Frediano


More information about the Spice-devel mailing list