[virt-tools-list] [PATCH virt-viewer] remote-viewer: Pass guri to remote_viewer_session_connected
Eduardo Lima (Etrunko)
etrunko at redhat.com
Fri Oct 20 17:21:55 UTC 2017
On 20/10/17 15:10, Eduardo Lima (Etrunko) wrote:
> When connecting to a VM via oVirt instance, the original uri can not be
> retrieved using virt_viewer_session_get_uri(). Consequently, it was
> never saved, even though the connection succeeds and the actual callback
> for "session-connected" signal, which saves the URI, is invoked.
>
> To solve this problem, we always pass a copy of the guri as user-data
> parameter for the callback, and if the call to
> virt_viewer_session_get_uri() returns NULL, the parameter is used
> instead.
>
> Resolves: https://bugzilla.redhat.com/1459792
>
> Signed-off-by: Eduardo Lima (Etrunko) <etrunko at redhat.com>
> ---
> src/remote-viewer.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/src/remote-viewer.c b/src/remote-viewer.c
> index 7834dac..7366fa1 100644
> --- a/src/remote-viewer.c
> +++ b/src/remote-viewer.c
> @@ -1075,13 +1075,17 @@ remote_viewer_recent_add(gchar *uri, const gchar *mime_type)
>
> static void
> remote_viewer_session_connected(VirtViewerSession *session,
> - VirtViewerApp *self G_GNUC_UNUSED)
> + gchar *guri)
> {
> gchar *uri = virt_viewer_session_get_uri(session);
> const gchar *mime = virt_viewer_session_mime_type(session);
>
> + if (uri == NULL)
> + uri = g_strdup(guri);
> +
> remote_viewer_recent_add(uri, mime);
> g_free(uri);
> + g_free(guri);
> }
>
I know this block looks a bit strange (at least to my eyes), but at
first it was like:
- remote_viewer_recent_add(uri, mime);
+ if (uri == NULL)
+ remote_viewer_recent_add(guri, mime);
+ else
+ remote_viewer_recent_add(uri, mime);
+
g_free(uri);
+ g_free(guri);
}
Which also feels kind of odd, so I decided to go with the first one.
Either way, no preference here, either way is fine for me.
Regards, Eduardo.
--
Eduardo de Barros Lima (Etrunko)
Software Engineer - RedHat
etrunko at redhat.com
More information about the virt-tools-list
mailing list