On Fri, Mar 04, 2016 at 03:13:27PM +0000, Frediano Ziglio wrote: > Considering that: > - QXLState is the state of QXLInstance implementation; > - RedDispatcher is the implementation of QXL; > - qif (QXLInterface*) field can be computed really easy from QXLInstance; > - most of its state is private. > Make all structure private and use QXLState instead of RedDispatcher. > > Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> > Acked-by: Jonathon Jongsma <jjongsma@xxxxxxxxxx> > --- > server/cursor-channel.c | 2 +- > server/dcc-send.c | 17 +- > server/dcc.c | 4 +- > server/display-channel.c | 8 +- > server/red-qxl.c | 499 +++++++++++++++++++++++++---------------------- > server/red-qxl.h | 37 ++-- > server/red-worker.c | 57 +++--- > server/red-worker.h | 2 +- > server/reds-private.h | 2 +- > server/reds.c | 80 ++++---- > server/reds.h | 11 +- > 11 files changed, 372 insertions(+), 347 deletions(-) > > diff --git a/server/cursor-channel.c b/server/cursor-channel.c > index 268e34f..f5cb5ee 100644 > --- a/server/cursor-channel.c > +++ b/server/cursor-channel.c > @@ -116,7 +116,7 @@ static void cursor_item_unref(CursorItem *item) > return; > > cursor_cmd = item->red_cursor; > - item->qxl->st->qif->release_resource(item->qxl, cursor_cmd->release_info_ext); > + qxl_get_interface(item->qxl)->release_resource(item->qxl, cursor_cmd->release_info_ext); For what it's worth, this could even become red_qxl_interface_release_resource(item->qxl, cursor_cmd->release_resource_ext) if we want to hide the function pointers. > diff --git a/server/red-worker.h b/server/red-worker.h > index e51e261..0f9cf61 100644 > --- a/server/red-worker.h > +++ b/server/red-worker.h > @@ -90,7 +90,7 @@ static inline void red_pipes_add_verb(RedChannel *channel, uint16_t verb) > } > } > > -RedWorker* red_worker_new(QXLInstance *qxl, RedDispatcher *red_dispatcher); > +RedWorker* red_worker_new(QXLInstance *qxl, QXLState *qxl_state); > bool red_worker_run(RedWorker *worker); > RedChannel* red_worker_get_cursor_channel(RedWorker *worker); > RedChannel* red_worker_get_display_channel(RedWorker *worker); > diff --git a/server/reds-private.h b/server/reds-private.h > index f567929..7877c73 100644 > --- a/server/reds-private.h > +++ b/server/reds-private.h > @@ -241,7 +241,7 @@ struct RedsState { > > RedSSLParameters ssl_parameters; > SpiceCoreInterfaceInternal *core; > - GList *dispatchers; > + GList *red_qxls; qxl_states rather than red_qxls maybe? Looks good either way, Acked-by: Christophe Fergeau <cfergeau@xxxxxxxxxx> Christophe
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel