Re: [PATCHv2 06/10] session: parse spice+unix:// URI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jan 27, 2015 at 02:53:19PM +0100, Marc-André Lureau wrote:
> ---
>  gtk/spice-session.c | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/gtk/spice-session.c b/gtk/spice-session.c
> index 03e0618..1050fd3 100644
> --- a/gtk/spice-session.c
> +++ b/gtk/spice-session.c
> @@ -349,6 +349,7 @@ spice_session_finalize(GObject *gobject)
>  }
>  
>  #define URI_SCHEME_SPICE "spice://"
> +#define URI_SCHEME_SPICE_UNIX "spice+unix://"
>  #define URI_QUERY_START ";?"
>  #define URI_QUERY_SEP   ";&"
>  
> @@ -383,10 +384,15 @@ static int spice_parse_uri(SpiceSession *session, const char *original_uri)
>  
>      uri = g_strdup(original_uri);
>  
> +    if (g_str_has_prefix(uri, URI_SCHEME_SPICE_UNIX)) {
> +        path = uri + strlen(URI_SCHEME_SPICE_UNIX);
> +        goto end;
> +    }
> +
>      /* Break up the URI into its various parts, scheme, authority,
>       * path (ignored) and query
>       */
> -    if (strncmp(uri, URI_SCHEME_SPICE, strlen(URI_SCHEME_SPICE)) != 0) {
> +    if (!g_str_has_prefix(uri, URI_SCHEME_SPICE)) {
>          g_warning("Expected a URI scheme of '%s' in URI '%s'",
>                    URI_SCHEME_SPICE, uri);
>          goto fail;
> @@ -484,19 +490,23 @@ static int spice_parse_uri(SpiceSession *session, const char *original_uri)
>          }
>      }
>  
> +    path = NULL;

I'd put this right after

unescaped_path = g_uri_unescape_string(path, NULL);


Christophe

Attachment: pgp95SQ3baLdp.pgp
Description: PGP signature

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]