[Spice-devel] [spice-gtk v1 1/4] gtk-session: remove extra clipboard selection check

Frediano Ziglio fziglio at redhat.com
Thu Dec 6 08:54:41 UTC 2018


> 
> From: Victor Toso <me at victortoso.com>
> 
> Commit 284c1f2d switched to
> spice_main_channel_clipboard_selection_release() which does check if
> agent is connected and does the right thing (expected) in regards to
> releasing the clipboard by calling agent_clipboard_release() which
> does check VD_AGENT_CAP_CLIPBOARD_SELECTION (like current removed
> code).
> 
> So this patch removes redundant check.
> 
> Same goes for spice_main_channel_clipboard_selection_grab() function.
> 
> Signed-off-by: Victor Toso <victortoso at redhat.com>

This is not the same. The test in agent_clipboard_grab is done with
g_return_if_fail which emits a warning while current code does not.
Also spice_main_channel_clipboard_selection_grab always calls
spice_channel_wakeup which current code does not.

> ---
>  src/spice-gtk-session.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/src/spice-gtk-session.c b/src/spice-gtk-session.c
> index 20a4060..8d31045 100644
> --- a/src/spice-gtk-session.c
> +++ b/src/spice-gtk-session.c
> @@ -610,9 +610,7 @@ static void clipboard_get_targets(GtkClipboard
> *clipboard,
>      }
>  
>      s->clip_grabbed[selection] = TRUE;
> -
> -    if (spice_main_channel_agent_test_capability(s->main,
> VD_AGENT_CAP_CLIPBOARD_BY_DEMAND))
> -        spice_main_channel_clipboard_selection_grab(s->main, selection,
> types, num_types);
> +    spice_main_channel_clipboard_selection_grab(s->main, selection, types,
> num_types);
>  
>      /* Sending a grab causes the agent to do an implicit release */
>      s->nclip_targets[selection] = 0;
> @@ -636,8 +634,7 @@ static void clipboard_owner_change(GtkClipboard
> *clipboard,
>  
>      if (s->clip_grabbed[selection]) {
>          s->clip_grabbed[selection] = FALSE;
> -        if (spice_main_channel_agent_test_capability(s->main,
> VD_AGENT_CAP_CLIPBOARD_BY_DEMAND))
> -            spice_main_channel_clipboard_selection_release(s->main,
> selection);
> +        spice_main_channel_clipboard_selection_release(s->main, selection);
>      }
>  
>      switch (event->reason) {

Frediano


More information about the Spice-devel mailing list