qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/6] Block patches
@ 2018-03-05  9:40 Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 1/6] util/uri.c: Coding style check, Only whitespace involved Stefan Hajnoczi
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Stefan Hajnoczi

The following changes since commit 136c67e07869227b21b3f627316e03679ce7b738:

  Merge remote-tracking branch 'remotes/bkoppelmann/tags/pull-tricore-2018-03-02' into staging (2018-03-02 16:56:20 +0000)

are available in the Git repository at:

  git://github.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 23500c6a9409efc80d696aede0629bfbe7556a90:

  README: Document 'git-publish' workflow (2018-03-05 09:03:17 +0000)

----------------------------------------------------------------
Pull request

Mostly patches that are only indirectly related to the block layer, but I've
reviewed them and there is no maintainer.

----------------------------------------------------------------

Fam Zheng (2):
  Add a git-publish configuration file
  README: Document 'git-publish' workflow

Su Hang (3):
  util/uri.c: Coding style check, Only whitespace involved
  util/uri.c: remove brackets that wrap `return` statement's content.
  util/uri.c: wrap single statement blocks with braces {}

Thomas Huth (1):
  tests/libqos: Check for valid dev pointer when looking for PCI devices

 tests/libqos/virtio-pci.c |    4 +-
 util/uri.c                | 1733 ++++++++++++++++++++++++---------------------
 .gitpublish               |   51 ++
 README                    |   31 +-
 4 files changed, 1014 insertions(+), 805 deletions(-)
 create mode 100644 .gitpublish

-- 
2.14.3

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 1/6] util/uri.c: Coding style check, Only whitespace involved
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 2/6] util/uri.c: remove brackets that wrap `return` statement's content Stefan Hajnoczi
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Su Hang, Stefan Hajnoczi

From: Su Hang <suhang16@mails.ucas.ac.cn>

Using `clang-format -i util/uri.c` first, then change back few code
manually, to make sure only whitespace involved.

Signed-off-by: Su Hang <suhang16@mails.ucas.ac.cn>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 1519533358-13759-2-git-send-email-suhang16@mails.ucas.ac.cn
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 util/uri.c | 1450 ++++++++++++++++++++++++++++++------------------------------
 1 file changed, 726 insertions(+), 724 deletions(-)

diff --git a/util/uri.c b/util/uri.c
index 21b1828170..cf09f41735 100644
--- a/util/uri.c
+++ b/util/uri.c
@@ -63,7 +63,6 @@ static void uri_clean(URI *uri);
  */
 #define IS_ALPHA(x) (IS_LOWALPHA(x) || IS_UPALPHA(x))
 
-
 /*
  * lowalpha = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" |
  *            "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" |
@@ -97,27 +96,27 @@ static void uri_clean(URI *uri);
  * mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
  */
 
-#define IS_MARK(x) (((x) == '-') || ((x) == '_') || ((x) == '.') ||     \
-    ((x) == '!') || ((x) == '~') || ((x) == '*') || ((x) == '\'') ||    \
+#define IS_MARK(x) (((x) == '-') || ((x) == '_') || ((x) == '.') ||            \
+    ((x) == '!') || ((x) == '~') || ((x) == '*') || ((x) == '\'') ||           \
     ((x) == '(') || ((x) == ')'))
 
 /*
  * unwise = "{" | "}" | "|" | "\" | "^" | "`"
  */
 
-#define IS_UNWISE(p)                                                    \
-      (((*(p) == '{')) || ((*(p) == '}')) || ((*(p) == '|')) ||         \
-       ((*(p) == '\\')) || ((*(p) == '^')) || ((*(p) == '[')) ||        \
-       ((*(p) == ']')) || ((*(p) == '`')))
+#define IS_UNWISE(p)                                                           \
+    (((*(p) == '{')) || ((*(p) == '}')) || ((*(p) == '|')) ||                  \
+     ((*(p) == '\\')) || ((*(p) == '^')) || ((*(p) == '[')) ||                 \
+     ((*(p) == ']')) || ((*(p) == '`')))
 /*
  * reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | "," |
  *            "[" | "]"
  */
 
-#define IS_RESERVED(x) (((x) == ';') || ((x) == '/') || ((x) == '?') || \
-        ((x) == ':') || ((x) == '@') || ((x) == '&') || ((x) == '=') || \
-        ((x) == '+') || ((x) == '$') || ((x) == ',') || ((x) == '[') || \
-        ((x) == ']'))
+#define IS_RESERVED(x) (((x) == ';') || ((x) == '/') || ((x) == '?') ||        \
+    ((x) == ':') || ((x) == '@') || ((x) == '&') || ((x) == '=') ||            \
+    ((x) == '+') || ((x) == '$') || ((x) == ',') || ((x) == '[') ||            \
+    ((x) == ']'))
 
 /*
  * unreserved = alphanum | mark
@@ -129,7 +128,7 @@ static void uri_clean(URI *uri);
  * Skip to next pointer char, handle escaped sequences
  */
 
-#define NEXT(p) ((*p == '%')? p += 3 : p++)
+#define NEXT(p) ((*p == '%') ? p += 3 : p++)
 
 /*
  * Productions from the spec.
@@ -141,37 +140,36 @@ static void uri_clean(URI *uri);
  * path          = [ abs_path | opaque_part ]
  */
 
-
 /************************************************************************
- *									*
- *                         RFC 3986 parser				*
- *									*
+ *                                                                      *
+ *                         RFC 3986 parser                              *
+ *                                                                      *
  ************************************************************************/
 
 #define ISA_DIGIT(p) ((*(p) >= '0') && (*(p) <= '9'))
-#define ISA_ALPHA(p) (((*(p) >= 'a') && (*(p) <= 'z')) ||		\
+#define ISA_ALPHA(p) (((*(p) >= 'a') && (*(p) <= 'z')) ||                      \
                       ((*(p) >= 'A') && (*(p) <= 'Z')))
-#define ISA_HEXDIG(p)							\
-       (ISA_DIGIT(p) || ((*(p) >= 'a') && (*(p) <= 'f')) ||		\
-        ((*(p) >= 'A') && (*(p) <= 'F')))
+#define ISA_HEXDIG(p)                                                          \
+    (ISA_DIGIT(p) || ((*(p) >= 'a') && (*(p) <= 'f')) ||                       \
+     ((*(p) >= 'A') && (*(p) <= 'F')))
 
 /*
  *    sub-delims    = "!" / "$" / "&" / "'" / "(" / ")"
  *                     / "*" / "+" / "," / ";" / "="
  */
-#define ISA_SUB_DELIM(p)						\
-      (((*(p) == '!')) || ((*(p) == '$')) || ((*(p) == '&')) ||		\
-       ((*(p) == '(')) || ((*(p) == ')')) || ((*(p) == '*')) ||		\
-       ((*(p) == '+')) || ((*(p) == ',')) || ((*(p) == ';')) ||		\
-       ((*(p) == '=')) || ((*(p) == '\'')))
+#define ISA_SUB_DELIM(p)                                                       \
+    (((*(p) == '!')) || ((*(p) == '$')) || ((*(p) == '&')) ||                  \
+     ((*(p) == '(')) || ((*(p) == ')')) || ((*(p) == '*')) ||                  \
+     ((*(p) == '+')) || ((*(p) == ',')) || ((*(p) == ';')) ||                  \
+     ((*(p) == '=')) || ((*(p) == '\'')))
 
 /*
  *    gen-delims    = ":" / "/" / "?" / "#" / "[" / "]" / "@"
  */
-#define ISA_GEN_DELIM(p)						\
-      (((*(p) == ':')) || ((*(p) == '/')) || ((*(p) == '?')) ||         \
-       ((*(p) == '#')) || ((*(p) == '[')) || ((*(p) == ']')) ||         \
-       ((*(p) == '@')))
+#define ISA_GEN_DELIM(p)                                                       \
+    (((*(p) == ':')) || ((*(p) == '/')) || ((*(p) == '?')) ||                  \
+     ((*(p) == '#')) || ((*(p) == '[')) || ((*(p) == ']')) ||                  \
+     ((*(p) == '@')))
 
 /*
  *    reserved      = gen-delims / sub-delims
@@ -181,22 +179,22 @@ static void uri_clean(URI *uri);
 /*
  *    unreserved    = ALPHA / DIGIT / "-" / "." / "_" / "~"
  */
-#define ISA_UNRESERVED(p)						\
-      ((ISA_ALPHA(p)) || (ISA_DIGIT(p)) || ((*(p) == '-')) ||		\
-       ((*(p) == '.')) || ((*(p) == '_')) || ((*(p) == '~')))
+#define ISA_UNRESERVED(p)                                                      \
+    ((ISA_ALPHA(p)) || (ISA_DIGIT(p)) || ((*(p) == '-')) ||                    \
+     ((*(p) == '.')) || ((*(p) == '_')) || ((*(p) == '~')))
 
 /*
  *    pct-encoded   = "%" HEXDIG HEXDIG
  */
-#define ISA_PCT_ENCODED(p)						\
-     ((*(p) == '%') && (ISA_HEXDIG(p + 1)) && (ISA_HEXDIG(p + 2)))
+#define ISA_PCT_ENCODED(p)                                                     \
+    ((*(p) == '%') && (ISA_HEXDIG(p + 1)) && (ISA_HEXDIG(p + 2)))
 
 /*
  *    pchar         = unreserved / pct-encoded / sub-delims / ":" / "@"
  */
-#define ISA_PCHAR(p)							\
-     (ISA_UNRESERVED(p) || ISA_PCT_ENCODED(p) || ISA_SUB_DELIM(p) ||	\
-      ((*(p) == ':')) || ((*(p) == '@')))
+#define ISA_PCHAR(p)                                                           \
+    (ISA_UNRESERVED(p) || ISA_PCT_ENCODED(p) || ISA_SUB_DELIM(p) ||            \
+     ((*(p) == ':')) || ((*(p) == '@')))
 
 /**
  * rfc3986_parse_scheme:
@@ -209,25 +207,26 @@ static void uri_clean(URI *uri);
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_scheme(URI *uri, const char **str) {
+static int rfc3986_parse_scheme(URI *uri, const char **str)
+{
     const char *cur;
 
     if (str == NULL)
-	return(-1);
+        return (-1);
 
     cur = *str;
     if (!ISA_ALPHA(cur))
-	return(2);
+        return (2);
     cur++;
-    while (ISA_ALPHA(cur) || ISA_DIGIT(cur) ||
-           (*cur == '+') || (*cur == '-') || (*cur == '.')) cur++;
+    while (ISA_ALPHA(cur) || ISA_DIGIT(cur) || (*cur == '+') || (*cur == '-') ||
+           (*cur == '.'))
+        cur++;
     if (uri != NULL) {
         g_free(uri->scheme);
-	uri->scheme = g_strndup(*str, cur - *str);
+        uri->scheme = g_strndup(*str, cur - *str);
     }
     *str = cur;
-    return(0);
+    return (0);
 }
 
 /**
@@ -245,8 +244,7 @@ rfc3986_parse_scheme(URI *uri, const char **str) {
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_fragment(URI *uri, const char **str)
+static int rfc3986_parse_fragment(URI *uri, const char **str)
 {
     const char *cur;
 
@@ -261,10 +259,10 @@ rfc3986_parse_fragment(URI *uri, const char **str)
         NEXT(cur);
     if (uri != NULL) {
         g_free(uri->fragment);
-	if (uri->cleanup & 2)
-	    uri->fragment = g_strndup(*str, cur - *str);
-	else
-	    uri->fragment = uri_string_unescape(*str, cur - *str, NULL);
+        if (uri->cleanup & 2)
+            uri->fragment = g_strndup(*str, cur - *str);
+        else
+            uri->fragment = uri_string_unescape(*str, cur - *str, NULL);
     }
     *str = cur;
     return (0);
@@ -281,8 +279,7 @@ rfc3986_parse_fragment(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_query(URI *uri, const char **str)
+static int rfc3986_parse_query(URI *uri, const char **str)
 {
     const char *cur;
 
@@ -296,7 +293,7 @@ rfc3986_parse_query(URI *uri, const char **str)
         NEXT(cur);
     if (uri != NULL) {
         g_free(uri->query);
-	uri->query = g_strndup (*str, cur - *str);
+        uri->query = g_strndup(*str, cur - *str);
     }
     *str = cur;
     return (0);
@@ -314,8 +311,7 @@ rfc3986_parse_query(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_port(URI *uri, const char **str)
+static int rfc3986_parse_port(URI *uri, const char **str)
 {
     const char *cur = *str;
     int port = 0;
@@ -349,27 +345,26 @@ rfc3986_parse_port(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_user_info(URI *uri, const char **str)
+static int rfc3986_parse_user_info(URI *uri, const char **str)
 {
     const char *cur;
 
     cur = *str;
-    while (ISA_UNRESERVED(cur) || ISA_PCT_ENCODED(cur) ||
-           ISA_SUB_DELIM(cur) || (*cur == ':'))
-	NEXT(cur);
+    while (ISA_UNRESERVED(cur) || ISA_PCT_ENCODED(cur) || ISA_SUB_DELIM(cur) ||
+           (*cur == ':'))
+        NEXT(cur);
     if (*cur == '@') {
-	if (uri != NULL) {
+        if (uri != NULL) {
             g_free(uri->user);
-	    if (uri->cleanup & 2)
-		uri->user = g_strndup(*str, cur - *str);
-	    else
-		uri->user = uri_string_unescape(*str, cur - *str, NULL);
-	}
-	*str = cur;
-	return(0);
+            if (uri->cleanup & 2)
+                uri->user = g_strndup(*str, cur - *str);
+            else
+                uri->user = uri_string_unescape(*str, cur - *str, NULL);
+        }
+        *str = cur;
+        return (0);
     }
-    return(1);
+    return (1);
 }
 
 /**
@@ -386,28 +381,28 @@ rfc3986_parse_user_info(URI *uri, const char **str)
  *
  * Returns 0 if found and skipped, 1 otherwise
  */
-static int
-rfc3986_parse_dec_octet(const char **str) {
+static int rfc3986_parse_dec_octet(const char **str)
+{
     const char *cur = *str;
 
     if (!(ISA_DIGIT(cur)))
-        return(1);
-    if (!ISA_DIGIT(cur+1))
-	cur++;
-    else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur+2)))
-	cur += 2;
+        return (1);
+    if (!ISA_DIGIT(cur + 1))
+        cur++;
+    else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2)))
+        cur += 2;
     else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2)))
-	cur += 3;
-    else if ((*cur == '2') && (*(cur + 1) >= '0') &&
-	     (*(cur + 1) <= '4') && (ISA_DIGIT(cur + 2)))
-	cur += 3;
-    else if ((*cur == '2') && (*(cur + 1) == '5') &&
-	     (*(cur + 2) >= '0') && (*(cur + 1) <= '5'))
-	cur += 3;
+        cur += 3;
+    else if ((*cur == '2') && (*(cur + 1) >= '0') && (*(cur + 1) <= '4') &&
+             (ISA_DIGIT(cur + 2)))
+        cur += 3;
+    else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') &&
+             (*(cur + 1) <= '5'))
+        cur += 3;
     else
-        return(1);
+        return (1);
     *str = cur;
-    return(0);
+    return (0);
 }
 /**
  * rfc3986_parse_host:
@@ -424,8 +419,7 @@ rfc3986_parse_dec_octet(const char **str) {
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_host(URI *uri, const char **str)
+static int rfc3986_parse_host(URI *uri, const char **str)
 {
     const char *cur = *str;
     const char *host;
@@ -436,34 +430,34 @@ rfc3986_parse_host(URI *uri, const char **str)
      */
     if (*cur == '[') {
         cur++;
-	while ((*cur != ']') && (*cur != 0))
-	    cur++;
-	if (*cur != ']')
-	    return(1);
-	cur++;
-	goto found;
+        while ((*cur != ']') && (*cur != 0))
+            cur++;
+        if (*cur != ']')
+            return (1);
+        cur++;
+        goto found;
     }
     /*
      * try to parse an IPv4
      */
     if (ISA_DIGIT(cur)) {
         if (rfc3986_parse_dec_octet(&cur) != 0)
-	    goto not_ipv4;
-	if (*cur != '.')
-	    goto not_ipv4;
-	cur++;
+            goto not_ipv4;
+        if (*cur != '.')
+            goto not_ipv4;
+        cur++;
         if (rfc3986_parse_dec_octet(&cur) != 0)
-	    goto not_ipv4;
-	if (*cur != '.')
-	    goto not_ipv4;
+            goto not_ipv4;
+        if (*cur != '.')
+            goto not_ipv4;
         if (rfc3986_parse_dec_octet(&cur) != 0)
-	    goto not_ipv4;
-	if (*cur != '.')
-	    goto not_ipv4;
+            goto not_ipv4;
+        if (*cur != '.')
+            goto not_ipv4;
         if (rfc3986_parse_dec_octet(&cur) != 0)
-	    goto not_ipv4;
-	goto found;
-not_ipv4:
+            goto not_ipv4;
+        goto found;
+    not_ipv4:
         cur = *str;
     }
     /*
@@ -474,18 +468,18 @@ not_ipv4:
 found:
     if (uri != NULL) {
         g_free(uri->authority);
-	uri->authority = NULL;
+        uri->authority = NULL;
         g_free(uri->server);
-	if (cur != host) {
-	    if (uri->cleanup & 2)
-		uri->server = g_strndup(host, cur - host);
-	    else
-		uri->server = uri_string_unescape(host, cur - host, NULL);
-	} else
-	    uri->server = NULL;
+        if (cur != host) {
+            if (uri->cleanup & 2)
+                uri->server = g_strndup(host, cur - host);
+            else
+                uri->server = uri_string_unescape(host, cur - host, NULL);
+        } else
+            uri->server = NULL;
     }
     *str = cur;
-    return(0);
+    return (0);
 }
 
 /**
@@ -500,8 +494,7 @@ found:
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_authority(URI *uri, const char **str)
+static int rfc3986_parse_authority(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -516,14 +509,16 @@ rfc3986_parse_authority(URI *uri, const char **str)
     else
         cur++;
     ret = rfc3986_parse_host(uri, &cur);
-    if (ret != 0) return(ret);
+    if (ret != 0)
+        return (ret);
     if (*cur == ':') {
         cur++;
         ret = rfc3986_parse_port(uri, &cur);
-	if (ret != 0) return(ret);
+        if (ret != 0)
+            return (ret);
     }
     *str = cur;
-    return(0);
+    return (0);
 }
 
 /**
@@ -542,16 +537,15 @@ rfc3986_parse_authority(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_segment(const char **str, char forbid, int empty)
+static int rfc3986_parse_segment(const char **str, char forbid, int empty)
 {
     const char *cur;
 
     cur = *str;
     if (!ISA_PCHAR(cur)) {
         if (empty)
-	    return(0);
-	return(1);
+            return (0);
+        return (1);
     }
     while (ISA_PCHAR(cur) && (*cur != forbid))
         NEXT(cur);
@@ -571,8 +565,7 @@ rfc3986_parse_segment(const char **str, char forbid, int empty)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_path_ab_empty(URI *uri, const char **str)
+static int rfc3986_parse_path_ab_empty(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -581,8 +574,9 @@ rfc3986_parse_path_ab_empty(URI *uri, const char **str)
 
     while (*cur == '/') {
         cur++;
-	ret = rfc3986_parse_segment(&cur, 0, 1);
-	if (ret != 0) return(ret);
+        ret = rfc3986_parse_segment(&cur, 0, 1);
+        if (ret != 0)
+            return (ret);
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -611,8 +605,7 @@ rfc3986_parse_path_ab_empty(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_path_absolute(URI *uri, const char **str)
+static int rfc3986_parse_path_absolute(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -620,15 +613,16 @@ rfc3986_parse_path_absolute(URI *uri, const char **str)
     cur = *str;
 
     if (*cur != '/')
-        return(1);
+        return (1);
     cur++;
     ret = rfc3986_parse_segment(&cur, 0, 0);
     if (ret == 0) {
-	while (*cur == '/') {
-	    cur++;
-	    ret = rfc3986_parse_segment(&cur, 0, 1);
-	    if (ret != 0) return(ret);
-	}
+        while (*cur == '/') {
+            cur++;
+            ret = rfc3986_parse_segment(&cur, 0, 1);
+            if (ret != 0)
+                return (ret);
+        }
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -657,8 +651,7 @@ rfc3986_parse_path_absolute(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_path_rootless(URI *uri, const char **str)
+static int rfc3986_parse_path_rootless(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -666,11 +659,13 @@ rfc3986_parse_path_rootless(URI *uri, const char **str)
     cur = *str;
 
     ret = rfc3986_parse_segment(&cur, 0, 0);
-    if (ret != 0) return(ret);
+    if (ret != 0)
+        return (ret);
     while (*cur == '/') {
         cur++;
-	ret = rfc3986_parse_segment(&cur, 0, 1);
-	if (ret != 0) return(ret);
+        ret = rfc3986_parse_segment(&cur, 0, 1);
+        if (ret != 0)
+            return (ret);
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -699,8 +694,7 @@ rfc3986_parse_path_rootless(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_path_no_scheme(URI *uri, const char **str)
+static int rfc3986_parse_path_no_scheme(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -708,11 +702,13 @@ rfc3986_parse_path_no_scheme(URI *uri, const char **str)
     cur = *str;
 
     ret = rfc3986_parse_segment(&cur, ':', 0);
-    if (ret != 0) return(ret);
+    if (ret != 0)
+        return (ret);
     while (*cur == '/') {
         cur++;
-	ret = rfc3986_parse_segment(&cur, 0, 1);
-	if (ret != 0) return(ret);
+        ret = rfc3986_parse_segment(&cur, 0, 1);
+        if (ret != 0)
+            return (ret);
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -744,8 +740,7 @@ rfc3986_parse_path_no_scheme(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_hier_part(URI *uri, const char **str)
+static int rfc3986_parse_hier_part(URI *uri, const char **str)
 {
     const char *cur;
     int ret;
@@ -754,24 +749,28 @@ rfc3986_parse_hier_part(URI *uri, const char **str)
 
     if ((*cur == '/') && (*(cur + 1) == '/')) {
         cur += 2;
-	ret = rfc3986_parse_authority(uri, &cur);
-	if (ret != 0) return(ret);
-	ret = rfc3986_parse_path_ab_empty(uri, &cur);
-	if (ret != 0) return(ret);
-	*str = cur;
-	return(0);
+        ret = rfc3986_parse_authority(uri, &cur);
+        if (ret != 0)
+            return (ret);
+        ret = rfc3986_parse_path_ab_empty(uri, &cur);
+        if (ret != 0)
+            return (ret);
+        *str = cur;
+        return (0);
     } else if (*cur == '/') {
         ret = rfc3986_parse_path_absolute(uri, &cur);
-	if (ret != 0) return(ret);
+        if (ret != 0)
+            return (ret);
     } else if (ISA_PCHAR(cur)) {
         ret = rfc3986_parse_path_rootless(uri, &cur);
-	if (ret != 0) return(ret);
+        if (ret != 0)
+            return (ret);
     } else {
-	/* path-empty is effectively empty */
-	if (uri != NULL) {
+        /* path-empty is effectively empty */
+        if (uri != NULL) {
             g_free(uri->path);
-	    uri->path = NULL;
-	}
+            uri->path = NULL;
+        }
     }
     *str = cur;
     return (0);
@@ -793,48 +792,53 @@ rfc3986_parse_hier_part(URI *uri, const char **str)
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_relative_ref(URI *uri, const char *str) {
+static int rfc3986_parse_relative_ref(URI *uri, const char *str)
+{
     int ret;
 
     if ((*str == '/') && (*(str + 1) == '/')) {
         str += 2;
-	ret = rfc3986_parse_authority(uri, &str);
-	if (ret != 0) return(ret);
-	ret = rfc3986_parse_path_ab_empty(uri, &str);
-	if (ret != 0) return(ret);
+        ret = rfc3986_parse_authority(uri, &str);
+        if (ret != 0)
+            return (ret);
+        ret = rfc3986_parse_path_ab_empty(uri, &str);
+        if (ret != 0)
+            return (ret);
     } else if (*str == '/') {
-	ret = rfc3986_parse_path_absolute(uri, &str);
-	if (ret != 0) return(ret);
+        ret = rfc3986_parse_path_absolute(uri, &str);
+        if (ret != 0)
+            return (ret);
     } else if (ISA_PCHAR(str)) {
         ret = rfc3986_parse_path_no_scheme(uri, &str);
-	if (ret != 0) return(ret);
+        if (ret != 0)
+            return (ret);
     } else {
-	/* path-empty is effectively empty */
-	if (uri != NULL) {
+        /* path-empty is effectively empty */
+        if (uri != NULL) {
             g_free(uri->path);
-	    uri->path = NULL;
-	}
+            uri->path = NULL;
+        }
     }
 
     if (*str == '?') {
-	str++;
-	ret = rfc3986_parse_query(uri, &str);
-	if (ret != 0) return(ret);
+        str++;
+        ret = rfc3986_parse_query(uri, &str);
+        if (ret != 0)
+            return (ret);
     }
     if (*str == '#') {
-	str++;
-	ret = rfc3986_parse_fragment(uri, &str);
-	if (ret != 0) return(ret);
+        str++;
+        ret = rfc3986_parse_fragment(uri, &str);
+        if (ret != 0)
+            return (ret);
     }
     if (*str != 0) {
-	uri_clean(uri);
-	return(1);
+        uri_clean(uri);
+        return (1);
     }
-    return(0);
+    return (0);
 }
 
-
 /**
  * rfc3986_parse:
  * @uri:  pointer to an URI structure
@@ -847,33 +851,37 @@ rfc3986_parse_relative_ref(URI *uri, const char *str) {
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse(URI *uri, const char *str) {
+static int rfc3986_parse(URI *uri, const char *str)
+{
     int ret;
 
     ret = rfc3986_parse_scheme(uri, &str);
-    if (ret != 0) return(ret);
+    if (ret != 0)
+        return (ret);
     if (*str != ':') {
-	return(1);
+        return (1);
     }
     str++;
     ret = rfc3986_parse_hier_part(uri, &str);
-    if (ret != 0) return(ret);
+    if (ret != 0)
+        return (ret);
     if (*str == '?') {
-	str++;
-	ret = rfc3986_parse_query(uri, &str);
-	if (ret != 0) return(ret);
+        str++;
+        ret = rfc3986_parse_query(uri, &str);
+        if (ret != 0)
+            return (ret);
     }
     if (*str == '#') {
-	str++;
-	ret = rfc3986_parse_fragment(uri, &str);
-	if (ret != 0) return(ret);
+        str++;
+        ret = rfc3986_parse_fragment(uri, &str);
+        if (ret != 0)
+            return (ret);
     }
     if (*str != 0) {
-	uri_clean(uri);
-	return(1);
+        uri_clean(uri);
+        return (1);
     }
-    return(0);
+    return (0);
 }
 
 /**
@@ -888,12 +896,12 @@ rfc3986_parse(URI *uri, const char *str) {
  *
  * Returns 0 or the error code
  */
-static int
-rfc3986_parse_uri_reference(URI *uri, const char *str) {
+static int rfc3986_parse_uri_reference(URI *uri, const char *str)
+{
     int ret;
 
     if (str == NULL)
-	return(-1);
+        return (-1);
     uri_clean(uri);
 
     /*
@@ -902,14 +910,14 @@ rfc3986_parse_uri_reference(URI *uri, const char *str) {
      */
     ret = rfc3986_parse(uri, str);
     if (ret != 0) {
-	uri_clean(uri);
+        uri_clean(uri);
         ret = rfc3986_parse_relative_ref(uri, str);
-	if (ret != 0) {
-	    uri_clean(uri);
-	    return(ret);
-	}
+        if (ret != 0) {
+            uri_clean(uri);
+            return (ret);
+        }
     }
-    return(0);
+    return (0);
 }
 
 /**
@@ -922,20 +930,20 @@ rfc3986_parse_uri_reference(URI *uri, const char *str) {
  *
  * Returns a newly built URI or NULL in case of error
  */
-URI *
-uri_parse(const char *str) {
+URI *uri_parse(const char *str)
+{
     URI *uri;
     int ret;
 
     if (str == NULL)
-	return(NULL);
+        return (NULL);
     uri = uri_new();
     ret = rfc3986_parse_uri_reference(uri, str);
     if (ret) {
         uri_free(uri);
-        return(NULL);
+        return (NULL);
     }
-    return(uri);
+    return (uri);
 }
 
 /**
@@ -950,9 +958,9 @@ uri_parse(const char *str) {
  *
  * Returns 0 or the error code
  */
-int
-uri_parse_into(URI *uri, const char *str) {
-    return(rfc3986_parse_uri_reference(uri, str));
+int uri_parse_into(URI *uri, const char *str)
+{
+    return (rfc3986_parse_uri_reference(uri, str));
 }
 
 /**
@@ -966,13 +974,13 @@ uri_parse_into(URI *uri, const char *str) {
  *
  * Returns a newly built URI or NULL in case of error
  */
-URI *
-uri_parse_raw(const char *str, int raw) {
+URI *uri_parse_raw(const char *str, int raw)
+{
     URI *uri;
     int ret;
 
     if (str == NULL)
-	return(NULL);
+        return (NULL);
     uri = uri_new();
     if (raw) {
         uri->cleanup |= 2;
@@ -980,15 +988,15 @@ uri_parse_raw(const char *str, int raw) {
     ret = uri_parse_into(uri, str);
     if (ret) {
         uri_free(uri);
-        return(NULL);
+        return (NULL);
     }
-    return(uri);
+    return (uri);
 }
 
 /************************************************************************
- *									*
- *			Generic URI structure functions			*
- *									*
+ *                                                                      *
+ *                    Generic URI structure functions                   *
+ *                                                                      *
  ************************************************************************/
 
 /**
@@ -998,12 +1006,12 @@ uri_parse_raw(const char *str, int raw) {
  *
  * Returns the new structure or NULL in case of error
  */
-URI *
-uri_new(void) {
+URI *uri_new(void)
+{
     URI *ret;
 
     ret = g_new0(URI, 1);
-    return(ret);
+    return (ret);
 }
 
 /**
@@ -1012,15 +1020,15 @@ uri_new(void) {
  * Function to handle properly a reallocation when saving an URI
  * Also imposes some limit on the length of an URI string output
  */
-static char *
-realloc2n(char *ret, int *max) {
+static char *realloc2n(char *ret, int *max)
+{
     char *temp;
     int tmp;
 
     tmp = *max * 2;
     temp = g_realloc(ret, (tmp + 1));
     *max = tmp;
-    return(temp);
+    return (temp);
 }
 
 /**
@@ -1031,221 +1039,217 @@ realloc2n(char *ret, int *max) {
  *
  * Returns a new string (to be deallocated by caller)
  */
-char *
-uri_to_string(URI *uri) {
+char *uri_to_string(URI *uri)
+{
     char *ret = NULL;
     char *temp;
     const char *p;
     int len;
     int max;
 
-    if (uri == NULL) return(NULL);
-
+    if (uri == NULL)
+        return (NULL);
 
     max = 80;
     ret = g_malloc(max + 1);
     len = 0;
 
     if (uri->scheme != NULL) {
-	p = uri->scheme;
-	while (*p != 0) {
-	    if (len >= max) {
+        p = uri->scheme;
+        while (*p != 0) {
+            if (len >= max) {
                 temp = realloc2n(ret, &max);
-		ret = temp;
-	    }
-	    ret[len++] = *p++;
-	}
-	if (len >= max) {
+                ret = temp;
+            }
+            ret[len++] = *p++;
+        }
+        if (len >= max) {
             temp = realloc2n(ret, &max);
             ret = temp;
-	}
-	ret[len++] = ':';
+        }
+        ret[len++] = ':';
     }
     if (uri->opaque != NULL) {
-	p = uri->opaque;
-	while (*p != 0) {
-	    if (len + 3 >= max) {
+        p = uri->opaque;
+        while (*p != 0) {
+            if (len + 3 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p)))
-		ret[len++] = *p++;
-	    else {
-		int val = *(unsigned char *)p++;
-		int hi = val / 0x10, lo = val % 0x10;
-		ret[len++] = '%';
-		ret[len++] = hi + (hi > 9? 'A'-10 : '0');
-		ret[len++] = lo + (lo > 9? 'A'-10 : '0');
-	    }
-	}
+            }
+            if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p)))
+                ret[len++] = *p++;
+            else {
+                int val = *(unsigned char *)p++;
+                int hi = val / 0x10, lo = val % 0x10;
+                ret[len++] = '%';
+                ret[len++] = hi + (hi > 9 ? 'A' - 10 : '0');
+                ret[len++] = lo + (lo > 9 ? 'A' - 10 : '0');
+            }
+        }
     } else {
-	if (uri->server != NULL) {
-	    if (len + 3 >= max) {
+        if (uri->server != NULL) {
+            if (len + 3 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    ret[len++] = '/';
-	    ret[len++] = '/';
-	    if (uri->user != NULL) {
-		p = uri->user;
-		while (*p != 0) {
-		    if (len + 3 >= max) {
+            }
+            ret[len++] = '/';
+            ret[len++] = '/';
+            if (uri->user != NULL) {
+                p = uri->user;
+                while (*p != 0) {
+                    if (len + 3 >= max) {
                         temp = realloc2n(ret, &max);
                         ret = temp;
-		    }
-		    if ((IS_UNRESERVED(*(p))) ||
-			((*(p) == ';')) || ((*(p) == ':')) ||
-			((*(p) == '&')) || ((*(p) == '=')) ||
-			((*(p) == '+')) || ((*(p) == '$')) ||
-			((*(p) == ',')))
-			ret[len++] = *p++;
-		    else {
-			int val = *(unsigned char *)p++;
-			int hi = val / 0x10, lo = val % 0x10;
-			ret[len++] = '%';
-			ret[len++] = hi + (hi > 9? 'A'-10 : '0');
-			ret[len++] = lo + (lo > 9? 'A'-10 : '0');
-		    }
-		}
-		if (len + 3 >= max) {
+                    }
+                    if ((IS_UNRESERVED(*(p))) || ((*(p) == ';')) ||
+                        ((*(p) == ':')) || ((*(p) == '&')) || ((*(p) == '=')) ||
+                        ((*(p) == '+')) || ((*(p) == '$')) || ((*(p) == ',')))
+                        ret[len++] = *p++;
+                    else {
+                        int val = *(unsigned char *)p++;
+                        int hi = val / 0x10, lo = val % 0x10;
+                        ret[len++] = '%';
+                        ret[len++] = hi + (hi > 9 ? 'A' - 10 : '0');
+                        ret[len++] = lo + (lo > 9 ? 'A' - 10 : '0');
+                    }
+                }
+                if (len + 3 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		ret[len++] = '@';
-	    }
-	    p = uri->server;
-	    while (*p != 0) {
-		if (len >= max) {
+                }
+                ret[len++] = '@';
+            }
+            p = uri->server;
+            while (*p != 0) {
+                if (len >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		ret[len++] = *p++;
-	    }
-	    if (uri->port > 0) {
-		if (len + 10 >= max) {
+                }
+                ret[len++] = *p++;
+            }
+            if (uri->port > 0) {
+                if (len + 10 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		len += snprintf(&ret[len], max - len, ":%d", uri->port);
-	    }
-	} else if (uri->authority != NULL) {
-	    if (len + 3 >= max) {
+                }
+                len += snprintf(&ret[len], max - len, ":%d", uri->port);
+            }
+        } else if (uri->authority != NULL) {
+            if (len + 3 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    ret[len++] = '/';
-	    ret[len++] = '/';
-	    p = uri->authority;
-	    while (*p != 0) {
-		if (len + 3 >= max) {
+            }
+            ret[len++] = '/';
+            ret[len++] = '/';
+            p = uri->authority;
+            while (*p != 0) {
+                if (len + 3 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		if ((IS_UNRESERVED(*(p))) ||
-                    ((*(p) == '$')) || ((*(p) == ',')) || ((*(p) == ';')) ||
-                    ((*(p) == ':')) || ((*(p) == '@')) || ((*(p) == '&')) ||
-                    ((*(p) == '=')) || ((*(p) == '+')))
-		    ret[len++] = *p++;
-		else {
-		    int val = *(unsigned char *)p++;
-		    int hi = val / 0x10, lo = val % 0x10;
-		    ret[len++] = '%';
-		    ret[len++] = hi + (hi > 9? 'A'-10 : '0');
-		    ret[len++] = lo + (lo > 9? 'A'-10 : '0');
-		}
-	    }
-	} else if (uri->scheme != NULL) {
-	    if (len + 3 >= max) {
+                }
+                if ((IS_UNRESERVED(*(p))) || ((*(p) == '$')) ||
+                    ((*(p) == ',')) || ((*(p) == ';')) || ((*(p) == ':')) ||
+                    ((*(p) == '@')) || ((*(p) == '&')) || ((*(p) == '=')) ||
+                    ((*(p) == '+')))
+                    ret[len++] = *p++;
+                else {
+                    int val = *(unsigned char *)p++;
+                    int hi = val / 0x10, lo = val % 0x10;
+                    ret[len++] = '%';
+                    ret[len++] = hi + (hi > 9 ? 'A' - 10 : '0');
+                    ret[len++] = lo + (lo > 9 ? 'A' - 10 : '0');
+                }
+            }
+        } else if (uri->scheme != NULL) {
+            if (len + 3 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    ret[len++] = '/';
-	    ret[len++] = '/';
-	}
-	if (uri->path != NULL) {
-	    p = uri->path;
-	    /*
-	     * the colon in file:///d: should not be escaped or
-	     * Windows accesses fail later.
-	     */
-	    if ((uri->scheme != NULL) &&
-		(p[0] == '/') &&
-		(((p[1] >= 'a') && (p[1] <= 'z')) ||
-		 ((p[1] >= 'A') && (p[1] <= 'Z'))) &&
-		(p[2] == ':') &&
-	        (!strcmp(uri->scheme, "file"))) {
-		if (len + 3 >= max) {
+            }
+            ret[len++] = '/';
+            ret[len++] = '/';
+        }
+        if (uri->path != NULL) {
+            p = uri->path;
+            /*
+             * the colon in file:///d: should not be escaped or
+             * Windows accesses fail later.
+             */
+            if ((uri->scheme != NULL) && (p[0] == '/') &&
+                (((p[1] >= 'a') && (p[1] <= 'z')) ||
+                 ((p[1] >= 'A') && (p[1] <= 'Z'))) &&
+                (p[2] == ':') && (!strcmp(uri->scheme, "file"))) {
+                if (len + 3 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		ret[len++] = *p++;
-		ret[len++] = *p++;
-		ret[len++] = *p++;
-	    }
-	    while (*p != 0) {
-		if (len + 3 >= max) {
+                }
+                ret[len++] = *p++;
+                ret[len++] = *p++;
+                ret[len++] = *p++;
+            }
+            while (*p != 0) {
+                if (len + 3 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		if ((IS_UNRESERVED(*(p))) || ((*(p) == '/')) ||
+                }
+                if ((IS_UNRESERVED(*(p))) || ((*(p) == '/')) ||
                     ((*(p) == ';')) || ((*(p) == '@')) || ((*(p) == '&')) ||
-	            ((*(p) == '=')) || ((*(p) == '+')) || ((*(p) == '$')) ||
-	            ((*(p) == ',')))
-		    ret[len++] = *p++;
-		else {
-		    int val = *(unsigned char *)p++;
-		    int hi = val / 0x10, lo = val % 0x10;
-		    ret[len++] = '%';
-		    ret[len++] = hi + (hi > 9? 'A'-10 : '0');
-		    ret[len++] = lo + (lo > 9? 'A'-10 : '0');
-		}
-	    }
-	}
-	if (uri->query != NULL) {
-	    if (len + 1 >= max) {
+                    ((*(p) == '=')) || ((*(p) == '+')) || ((*(p) == '$')) ||
+                    ((*(p) == ',')))
+                    ret[len++] = *p++;
+                else {
+                    int val = *(unsigned char *)p++;
+                    int hi = val / 0x10, lo = val % 0x10;
+                    ret[len++] = '%';
+                    ret[len++] = hi + (hi > 9 ? 'A' - 10 : '0');
+                    ret[len++] = lo + (lo > 9 ? 'A' - 10 : '0');
+                }
+            }
+        }
+        if (uri->query != NULL) {
+            if (len + 1 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    ret[len++] = '?';
-	    p = uri->query;
-	    while (*p != 0) {
-		if (len + 1 >= max) {
+            }
+            ret[len++] = '?';
+            p = uri->query;
+            while (*p != 0) {
+                if (len + 1 >= max) {
                     temp = realloc2n(ret, &max);
                     ret = temp;
-		}
-		ret[len++] = *p++;
-	    }
-	}
+                }
+                ret[len++] = *p++;
+            }
+        }
     }
     if (uri->fragment != NULL) {
-	if (len + 3 >= max) {
+        if (len + 3 >= max) {
             temp = realloc2n(ret, &max);
             ret = temp;
-	}
-	ret[len++] = '#';
-	p = uri->fragment;
-	while (*p != 0) {
-	    if (len + 3 >= max) {
+        }
+        ret[len++] = '#';
+        p = uri->fragment;
+        while (*p != 0) {
+            if (len + 3 >= max) {
                 temp = realloc2n(ret, &max);
                 ret = temp;
-	    }
-	    if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p))))
-		ret[len++] = *p++;
-	    else {
-		int val = *(unsigned char *)p++;
-		int hi = val / 0x10, lo = val % 0x10;
-		ret[len++] = '%';
-		ret[len++] = hi + (hi > 9? 'A'-10 : '0');
-		ret[len++] = lo + (lo > 9? 'A'-10 : '0');
-	    }
-	}
+            }
+            if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p))))
+                ret[len++] = *p++;
+            else {
+                int val = *(unsigned char *)p++;
+                int hi = val / 0x10, lo = val % 0x10;
+                ret[len++] = '%';
+                ret[len++] = hi + (hi > 9 ? 'A' - 10 : '0');
+                ret[len++] = lo + (lo > 9 ? 'A' - 10 : '0');
+            }
+        }
     }
     if (len >= max) {
         temp = realloc2n(ret, &max);
         ret = temp;
     }
     ret[len] = 0;
-    return(ret);
+    return (ret);
 }
 
 /**
@@ -1254,9 +1258,10 @@ uri_to_string(URI *uri) {
  *
  * Make sure the URI struct is free of content
  */
-static void
-uri_clean(URI *uri) {
-    if (uri == NULL) return;
+static void uri_clean(URI *uri)
+{
+    if (uri == NULL)
+        return;
 
     g_free(uri->scheme);
     uri->scheme = NULL;
@@ -1282,16 +1287,16 @@ uri_clean(URI *uri) {
  *
  * Free up the URI struct
  */
-void
-uri_free(URI *uri) {
+void uri_free(URI *uri)
+{
     uri_clean(uri);
     g_free(uri);
 }
 
 /************************************************************************
- *									*
- *			Helper functions				*
- *									*
+ *                                                                      *
+ *                           Helper functions                           *
+ *                                                                      *
  ************************************************************************/
 
 /**
@@ -1305,21 +1310,21 @@ uri_free(URI *uri) {
  *
  * Returns 0 or an error code
  */
-static int
-normalize_uri_path(char *path) {
+static int normalize_uri_path(char *path)
+{
     char *cur, *out;
 
     if (path == NULL)
-	return(-1);
+        return (-1);
 
     /* Skip all initial "/" chars.  We want to get to the beginning of the
      * first non-empty segment.
      */
     cur = path;
     while (cur[0] == '/')
-      ++cur;
+        ++cur;
     if (cur[0] == '\0')
-      return(0);
+        return (0);
 
     /* Keep everything we've seen so far.  */
     out = cur;
@@ -1328,46 +1333,46 @@ normalize_uri_path(char *path) {
      * Analyze each segment in sequence for cases (c) and (d).
      */
     while (cur[0] != '\0') {
-	/*
-	 * c) All occurrences of "./", where "." is a complete path segment,
-	 *    are removed from the buffer string.
-	 */
-	if ((cur[0] == '.') && (cur[1] == '/')) {
-	    cur += 2;
-	    /* '//' normalization should be done at this point too */
-	    while (cur[0] == '/')
-		cur++;
-	    continue;
-	}
+        /*
+         * c) All occurrences of "./", where "." is a complete path segment,
+         *    are removed from the buffer string.
+         */
+        if ((cur[0] == '.') && (cur[1] == '/')) {
+            cur += 2;
+            /* '//' normalization should be done at this point too */
+            while (cur[0] == '/')
+                cur++;
+            continue;
+        }
 
-	/*
-	 * d) If the buffer string ends with "." as a complete path segment,
-	 *    that "." is removed.
-	 */
-	if ((cur[0] == '.') && (cur[1] == '\0'))
-	    break;
+        /*
+         * d) If the buffer string ends with "." as a complete path segment,
+         *    that "." is removed.
+         */
+        if ((cur[0] == '.') && (cur[1] == '\0'))
+            break;
 
-	/* Otherwise keep the segment.  */
-	while (cur[0] != '/') {
+        /* Otherwise keep the segment.  */
+        while (cur[0] != '/') {
             if (cur[0] == '\0')
-              goto done_cd;
-	    (out++)[0] = (cur++)[0];
-	}
-	/* nomalize // */
-	while ((cur[0] == '/') && (cur[1] == '/'))
-	    cur++;
+                goto done_cd;
+            (out++)[0] = (cur++)[0];
+        }
+        /* nomalize // */
+        while ((cur[0] == '/') && (cur[1] == '/'))
+            cur++;
 
         (out++)[0] = (cur++)[0];
     }
- done_cd:
+done_cd:
     out[0] = '\0';
 
     /* Reset to the beginning of the first segment for the next sequence.  */
     cur = path;
     while (cur[0] == '/')
-      ++cur;
+        ++cur;
     if (cur[0] == '\0')
-	return(0);
+        return (0);
 
     /*
      * Analyze each segment in sequence for cases (e) and (f).
@@ -1397,23 +1402,23 @@ normalize_uri_path(char *path) {
         /* Find the end of the current segment.  */
         segp = cur;
         while ((segp[0] != '/') && (segp[0] != '\0'))
-          ++segp;
+            ++segp;
 
         /* If this is the last segment, we're done (we need at least two
          * segments to meet the criteria for the (e) and (f) cases).
          */
         if (segp[0] == '\0')
-          break;
+            break;
 
         /* If the first segment is "..", or if the next segment _isn't_ "..",
          * keep this segment and try the next one.
          */
         ++segp;
-        if (((cur[0] == '.') && (cur[1] == '.') && (segp == cur+3))
-            || ((segp[0] != '.') || (segp[1] != '.')
-                || ((segp[2] != '/') && (segp[2] != '\0')))) {
-          cur = segp;
-          continue;
+        if (((cur[0] == '.') && (cur[1] == '.') && (segp == cur + 3)) ||
+            ((segp[0] != '.') || (segp[1] != '.') ||
+             ((segp[2] != '/') && (segp[2] != '\0')))) {
+            cur = segp;
+            continue;
         }
 
         /* If we get here, remove this segment and the next one and back up
@@ -1425,22 +1430,22 @@ normalize_uri_path(char *path) {
 
         /* If this is the end of the buffer, we're done.  */
         if (segp[2] == '\0') {
-          cur[0] = '\0';
-          break;
+            cur[0] = '\0';
+            break;
         }
         /* Valgrind complained, strcpy(cur, segp + 3); */
         /* string will overlap, do not use strcpy */
         tmp = cur;
         segp += 3;
         while ((*tmp++ = *segp++) != 0)
-          ;
+            ;
 
         /* If there are no previous segments, then keep going from here.  */
         segp = cur;
         while ((segp > path) && ((--segp)[0] == '/'))
-          ;
+            ;
         if (segp == path)
-          continue;
+            continue;
 
         /* "segp" is pointing to the end of a previous segment; find it's
          * start.  We need to back up to the previous segment and start
@@ -1451,7 +1456,7 @@ normalize_uri_path(char *path) {
          */
         cur = segp;
         while ((cur > path) && (cur[-1] != '/'))
-          --cur;
+            --cur;
     }
     out[0] = '\0';
 
@@ -1467,31 +1472,30 @@ normalize_uri_path(char *path) {
      * We discard them from the final path.
      */
     if (path[0] == '/') {
-      cur = path;
-      while ((cur[0] == '/') && (cur[1] == '.') && (cur[2] == '.')
-             && ((cur[3] == '/') || (cur[3] == '\0')))
-	cur += 3;
+        cur = path;
+        while ((cur[0] == '/') && (cur[1] == '.') && (cur[2] == '.') &&
+               ((cur[3] == '/') || (cur[3] == '\0')))
+            cur += 3;
 
-      if (cur != path) {
-	out = path;
-	while (cur[0] != '\0')
-          (out++)[0] = (cur++)[0];
-	out[0] = 0;
-      }
+        if (cur != path) {
+            out = path;
+            while (cur[0] != '\0')
+                (out++)[0] = (cur++)[0];
+            out[0] = 0;
+        }
     }
 
-    return(0);
+    return (0);
 }
 
-static int is_hex(char c) {
-    if (((c >= '0') && (c <= '9')) ||
-        ((c >= 'a') && (c <= 'f')) ||
+static int is_hex(char c)
+{
+    if (((c >= '0') && (c <= '9')) || ((c >= 'a') && (c <= 'f')) ||
         ((c >= 'A') && (c <= 'F')))
-	return(1);
-    return(0);
+        return (1);
+    return (0);
 }
 
-
 /**
  * uri_string_unescape:
  * @str:  the string to unescape
@@ -1506,48 +1510,50 @@ static int is_hex(char c) {
  * Returns a copy of the string, but unescaped, will return NULL only in case
  * of error
  */
-char *
-uri_string_unescape(const char *str, int len, char *target) {
+char *uri_string_unescape(const char *str, int len, char *target)
+{
     char *ret, *out;
     const char *in;
 
     if (str == NULL)
-	return(NULL);
-    if (len <= 0) len = strlen(str);
-    if (len < 0) return(NULL);
+        return (NULL);
+    if (len <= 0)
+        len = strlen(str);
+    if (len < 0)
+        return (NULL);
 
     if (target == NULL) {
-	ret = g_malloc(len + 1);
+        ret = g_malloc(len + 1);
     } else
-	ret = target;
+        ret = target;
     in = str;
     out = ret;
-    while(len > 0) {
-	if ((len > 2) && (*in == '%') && (is_hex(in[1])) && (is_hex(in[2]))) {
-	    in++;
-	    if ((*in >= '0') && (*in <= '9'))
-	        *out = (*in - '0');
-	    else if ((*in >= 'a') && (*in <= 'f'))
-	        *out = (*in - 'a') + 10;
-	    else if ((*in >= 'A') && (*in <= 'F'))
-	        *out = (*in - 'A') + 10;
-	    in++;
-	    if ((*in >= '0') && (*in <= '9'))
-	        *out = *out * 16 + (*in - '0');
-	    else if ((*in >= 'a') && (*in <= 'f'))
-	        *out = *out * 16 + (*in - 'a') + 10;
-	    else if ((*in >= 'A') && (*in <= 'F'))
-	        *out = *out * 16 + (*in - 'A') + 10;
-	    in++;
-	    len -= 3;
-	    out++;
-	} else {
-	    *out++ = *in++;
-	    len--;
-	}
+    while (len > 0) {
+        if ((len > 2) && (*in == '%') && (is_hex(in[1])) && (is_hex(in[2]))) {
+            in++;
+            if ((*in >= '0') && (*in <= '9'))
+                *out = (*in - '0');
+            else if ((*in >= 'a') && (*in <= 'f'))
+                *out = (*in - 'a') + 10;
+            else if ((*in >= 'A') && (*in <= 'F'))
+                *out = (*in - 'A') + 10;
+            in++;
+            if ((*in >= '0') && (*in <= '9'))
+                *out = *out * 16 + (*in - '0');
+            else if ((*in >= 'a') && (*in <= 'f'))
+                *out = *out * 16 + (*in - 'a') + 10;
+            else if ((*in >= 'A') && (*in <= 'F'))
+                *out = *out * 16 + (*in - 'A') + 10;
+            in++;
+            len -= 3;
+            out++;
+        } else {
+            *out++ = *in++;
+            len--;
+        }
     }
     *out = 0;
-    return(ret);
+    return (ret);
 }
 
 /**
@@ -1560,59 +1566,59 @@ uri_string_unescape(const char *str, int len, char *target) {
  *
  * Returns a new escaped string or NULL in case of error.
  */
-char *
-uri_string_escape(const char *str, const char *list) {
+char *uri_string_escape(const char *str, const char *list)
+{
     char *ret, ch;
     char *temp;
     const char *in;
     int len, out;
 
     if (str == NULL)
-	return(NULL);
+        return (NULL);
     if (str[0] == 0)
-	return(g_strdup(str));
+        return (g_strdup(str));
     len = strlen(str);
-    if (!(len > 0)) return(NULL);
+    if (!(len > 0))
+        return (NULL);
 
     len += 20;
     ret = g_malloc(len);
     in = str;
     out = 0;
-    while(*in != 0) {
-	if (len - out <= 3) {
+    while (*in != 0) {
+        if (len - out <= 3) {
             temp = realloc2n(ret, &len);
-	    ret = temp;
-	}
+            ret = temp;
+        }
 
-	ch = *in;
-
-	if ((ch != '@') && (!IS_UNRESERVED(ch)) && (!strchr(list, ch))) {
-	    unsigned char val;
-	    ret[out++] = '%';
-	    val = ch >> 4;
-	    if (val <= 9)
-		ret[out++] = '0' + val;
-	    else
-		ret[out++] = 'A' + val - 0xA;
-	    val = ch & 0xF;
-	    if (val <= 9)
-		ret[out++] = '0' + val;
-	    else
-		ret[out++] = 'A' + val - 0xA;
-	    in++;
-	} else {
-	    ret[out++] = *in++;
-	}
+        ch = *in;
 
+        if ((ch != '@') && (!IS_UNRESERVED(ch)) && (!strchr(list, ch))) {
+            unsigned char val;
+            ret[out++] = '%';
+            val = ch >> 4;
+            if (val <= 9)
+                ret[out++] = '0' + val;
+            else
+                ret[out++] = 'A' + val - 0xA;
+            val = ch & 0xF;
+            if (val <= 9)
+                ret[out++] = '0' + val;
+            else
+                ret[out++] = 'A' + val - 0xA;
+            in++;
+        } else {
+            ret[out++] = *in++;
+        }
     }
     ret[out] = 0;
-    return(ret);
+    return (ret);
 }
 
 /************************************************************************
- *									*
- *			Public functions				*
- *									*
+ *                                                                      *
+ *                           Public functions                           *
+ *                                                                      *
  ************************************************************************/
 
 /**
@@ -1630,8 +1636,8 @@ uri_string_escape(const char *str, const char *list) {
  * Returns a new URI string (to be freed by the caller) or NULL in case
  *         of error.
  */
-char *
-uri_resolve(const char *uri, const char *base) {
+char *uri_resolve(const char *uri, const char *base)
+{
     char *val = NULL;
     int ret, len, indx, cur, out;
     URI *ref = NULL;
@@ -1647,43 +1653,42 @@ uri_resolve(const char *uri, const char *base) {
      *    URI.  Should we do that here?
      */
     if (uri == NULL)
-	ret = -1;
+        ret = -1;
     else {
-	if (*uri) {
-	    ref = uri_new();
-	    ret = uri_parse_into(ref, uri);
-	}
-	else
-	    ret = 0;
+        if (*uri) {
+            ref = uri_new();
+            ret = uri_parse_into(ref, uri);
+        } else
+            ret = 0;
     }
     if (ret != 0)
-	goto done;
+        goto done;
     if ((ref != NULL) && (ref->scheme != NULL)) {
-	/*
-	 * The URI is absolute don't modify.
-	 */
-	val = g_strdup(uri);
-	goto done;
+        /*
+         * The URI is absolute don't modify.
+         */
+        val = g_strdup(uri);
+        goto done;
     }
     if (base == NULL)
-	ret = -1;
+        ret = -1;
     else {
-	bas = uri_new();
-	ret = uri_parse_into(bas, base);
+        bas = uri_new();
+        ret = uri_parse_into(bas, base);
     }
     if (ret != 0) {
-	if (ref)
-	    val = uri_to_string(ref);
-	goto done;
+        if (ref)
+            val = uri_to_string(ref);
+        goto done;
     }
     if (ref == NULL) {
-	/*
-	 * the base fragment must be ignored
-	 */
+        /*
+         * the base fragment must be ignored
+         */
         g_free(bas->fragment);
         bas->fragment = NULL;
-	val = uri_to_string(bas);
-	goto done;
+        val = uri_to_string(bas);
+        goto done;
     }
 
     /*
@@ -1700,23 +1705,23 @@ uri_resolve(const char *uri, const char *base) {
      */
     res = uri_new();
     if ((ref->scheme == NULL) && (ref->path == NULL) &&
-	((ref->authority == NULL) && (ref->server == NULL))) {
+        ((ref->authority == NULL) && (ref->server == NULL))) {
         res->scheme = g_strdup(bas->scheme);
-	if (bas->authority != NULL)
-	    res->authority = g_strdup(bas->authority);
-	else if (bas->server != NULL) {
+        if (bas->authority != NULL)
+            res->authority = g_strdup(bas->authority);
+        else if (bas->server != NULL) {
             res->server = g_strdup(bas->server);
             res->user = g_strdup(bas->user);
             res->port = bas->port;
-	}
+        }
         res->path = g_strdup(bas->path);
         if (ref->query != NULL) {
-	    res->query = g_strdup (ref->query);
+            res->query = g_strdup(ref->query);
         } else {
             res->query = g_strdup(bas->query);
         }
         res->fragment = g_strdup(ref->fragment);
-	goto step_7;
+        goto step_7;
     }
 
     /*
@@ -1726,8 +1731,8 @@ uri_resolve(const char *uri, const char *base) {
      *    scheme is inherited from the base URI's scheme component.
      */
     if (ref->scheme != NULL) {
-	val = uri_to_string(ref);
-	goto done;
+        val = uri_to_string(ref);
+        goto done;
     }
     res->scheme = g_strdup(bas->scheme);
 
@@ -1742,22 +1747,22 @@ uri_resolve(const char *uri, const char *base) {
      *    use an authority component.
      */
     if ((ref->authority != NULL) || (ref->server != NULL)) {
-	if (ref->authority != NULL)
-	    res->authority = g_strdup(ref->authority);
-	else {
-	    res->server = g_strdup(ref->server);
+        if (ref->authority != NULL)
+            res->authority = g_strdup(ref->authority);
+        else {
+            res->server = g_strdup(ref->server);
             res->user = g_strdup(ref->user);
             res->port = ref->port;
-	}
+        }
         res->path = g_strdup(ref->path);
-	goto step_7;
+        goto step_7;
     }
     if (bas->authority != NULL)
-	res->authority = g_strdup(bas->authority);
+        res->authority = g_strdup(bas->authority);
     else if (bas->server != NULL) {
         res->server = g_strdup(bas->server);
         res->user = g_strdup(bas->user);
-	res->port = bas->port;
+        res->port = bas->port;
     }
 
     /*
@@ -1765,11 +1770,10 @@ uri_resolve(const char *uri, const char *base) {
      *    the reference is an absolute-path and we skip to step 7.
      */
     if ((ref->path != NULL) && (ref->path[0] == '/')) {
-	res->path = g_strdup(ref->path);
-	goto step_7;
+        res->path = g_strdup(ref->path);
+        goto step_7;
     }
 
-
     /*
      * 6) If this step is reached, then we are resolving a relative-path
      *    reference.  The relative path needs to be merged with the base
@@ -1780,9 +1784,9 @@ uri_resolve(const char *uri, const char *base) {
      */
     len = 2; /* extra / and 0 */
     if (ref->path != NULL)
-	len += strlen(ref->path);
+        len += strlen(ref->path);
     if (bas->path != NULL)
-	len += strlen(bas->path);
+        len += strlen(bas->path);
     res->path = g_malloc(len);
     res->path[0] = 0;
 
@@ -1794,18 +1798,18 @@ uri_resolve(const char *uri, const char *base) {
     cur = 0;
     out = 0;
     if (bas->path != NULL) {
-	while (bas->path[cur] != 0) {
-	    while ((bas->path[cur] != 0) && (bas->path[cur] != '/'))
-		cur++;
-	    if (bas->path[cur] == 0)
-		break;
+        while (bas->path[cur] != 0) {
+            while ((bas->path[cur] != 0) && (bas->path[cur] != '/'))
+                cur++;
+            if (bas->path[cur] == 0)
+                break;
 
-	    cur++;
-	    while (out < cur) {
-		res->path[out] = bas->path[out];
-		out++;
-	    }
-	}
+            cur++;
+            while (out < cur) {
+                res->path[out] = bas->path[out];
+                out++;
+            }
+        }
     }
     res->path[out] = 0;
 
@@ -1814,15 +1818,15 @@ uri_resolve(const char *uri, const char *base) {
      *    string.
      */
     if (ref->path != NULL && ref->path[0] != 0) {
-	indx = 0;
-	/*
-	 * Ensure the path includes a '/'
-	 */
-	if ((out == 0) && (bas->server != NULL))
-	    res->path[out++] = '/';
-	while (ref->path[indx] != 0) {
-	    res->path[out++] = ref->path[indx++];
-	}
+        indx = 0;
+        /*
+         * Ensure the path includes a '/'
+         */
+        if ((out == 0) && (bas->server != NULL))
+            res->path[out++] = '/';
+        while (ref->path[indx] != 0) {
+            res->path[out++] = ref->path[indx++];
+        }
     }
     res->path[out] = 0;
 
@@ -1842,12 +1846,12 @@ step_7:
 
 done:
     if (ref != NULL)
-	uri_free(ref);
+        uri_free(ref);
     if (bas != NULL)
-	uri_free(bas);
+        uri_free(bas);
     if (res != NULL)
-	uri_free(res);
-    return(val);
+        uri_free(res);
+    return (val);
 }
 
 /**
@@ -1882,8 +1886,7 @@ done:
  * Returns a new URI string (to be freed by the caller) or NULL in case
  * error.
  */
-char *
-uri_resolve_relative (const char *uri, const char * base)
+char *uri_resolve_relative(const char *uri, const char *base)
 {
     char *val = NULL;
     int ret;
@@ -1897,58 +1900,57 @@ uri_resolve_relative (const char *uri, const char * base)
     int remove_path = 0;
 
     if ((uri == NULL) || (*uri == 0))
-	return NULL;
+        return NULL;
 
     /*
      * First parse URI into a standard form
      */
-    ref = uri_new ();
+    ref = uri_new();
     /* If URI not already in "relative" form */
     if (uri[0] != '.') {
-	ret = uri_parse_into (ref, uri);
-	if (ret != 0)
-	    goto done;		/* Error in URI, return NULL */
+        ret = uri_parse_into(ref, uri);
+        if (ret != 0)
+            goto done; /* Error in URI, return NULL */
     } else
-	ref->path = g_strdup(uri);
+        ref->path = g_strdup(uri);
 
     /*
      * Next parse base into the same standard form
      */
     if ((base == NULL) || (*base == 0)) {
-	val = g_strdup (uri);
-	goto done;
+        val = g_strdup(uri);
+        goto done;
     }
-    bas = uri_new ();
+    bas = uri_new();
     if (base[0] != '.') {
-	ret = uri_parse_into (bas, base);
-	if (ret != 0)
-	    goto done;		/* Error in base, return NULL */
+        ret = uri_parse_into(bas, base);
+        if (ret != 0)
+            goto done; /* Error in base, return NULL */
     } else
-	bas->path = g_strdup(base);
+        bas->path = g_strdup(base);
 
     /*
      * If the scheme / server on the URI differs from the base,
      * just return the URI
      */
     if ((ref->scheme != NULL) &&
-	((bas->scheme == NULL) ||
-	 (strcmp (bas->scheme, ref->scheme)) ||
-	 (strcmp (bas->server, ref->server)))) {
-	val = g_strdup (uri);
-	goto done;
+        ((bas->scheme == NULL) || (strcmp(bas->scheme, ref->scheme)) ||
+         (strcmp(bas->server, ref->server)))) {
+        val = g_strdup(uri);
+        goto done;
     }
     if (bas->path == ref->path ||
         (bas->path && ref->path && !strcmp(bas->path, ref->path))) {
-	val = g_strdup("");
-	goto done;
+        val = g_strdup("");
+        goto done;
     }
     if (bas->path == NULL) {
-	val = g_strdup(ref->path);
-	goto done;
+        val = g_strdup(ref->path);
+        goto done;
     }
     if (ref->path == NULL) {
-        ref->path = (char *) "/";
-	remove_path = 1;
+        ref->path = (char *)"/";
+        remove_path = 1;
     }
 
     /*
@@ -1958,78 +1960,78 @@ uri_resolve_relative (const char *uri, const char * base)
      * two path components may be missing (bug 316224)
      */
     if (bas->path == NULL) {
-	if (ref->path != NULL) {
-	    uptr = ref->path;
-	    if (*uptr == '/')
-		uptr++;
-	    /* exception characters from uri_to_string */
-	    val = uri_string_escape(uptr, "/;&=+$,");
-	}
-	goto done;
+        if (ref->path != NULL) {
+            uptr = ref->path;
+            if (*uptr == '/')
+                uptr++;
+            /* exception characters from uri_to_string */
+            val = uri_string_escape(uptr, "/;&=+$,");
+        }
+        goto done;
     }
     bptr = bas->path;
     if (ref->path == NULL) {
-	for (ix = 0; bptr[ix] != 0; ix++) {
-	    if (bptr[ix] == '/')
-		nbslash++;
-	}
-	uptr = NULL;
-	len = 1;	/* this is for a string terminator only */
+        for (ix = 0; bptr[ix] != 0; ix++) {
+            if (bptr[ix] == '/')
+                nbslash++;
+        }
+        uptr = NULL;
+        len = 1; /* this is for a string terminator only */
     } else {
-    /*
-     * Next we compare the two strings and find where they first differ
-     */
-	if ((ref->path[pos] == '.') && (ref->path[pos+1] == '/'))
+        /*
+         * Next we compare the two strings and find where they first differ
+         */
+        if ((ref->path[pos] == '.') && (ref->path[pos + 1] == '/'))
             pos += 2;
-	if ((*bptr == '.') && (bptr[1] == '/'))
+        if ((*bptr == '.') && (bptr[1] == '/'))
             bptr += 2;
-	else if ((*bptr == '/') && (ref->path[pos] != '/'))
-	    bptr++;
-	while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0))
-	    pos++;
+        else if ((*bptr == '/') && (ref->path[pos] != '/'))
+            bptr++;
+        while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0))
+            pos++;
 
-	if (bptr[pos] == ref->path[pos]) {
-	    val = g_strdup("");
-	    goto done;		/* (I can't imagine why anyone would do this) */
-	}
+        if (bptr[pos] == ref->path[pos]) {
+            val = g_strdup("");
+            goto done; /* (I can't imagine why anyone would do this) */
+        }
 
-	/*
-	 * In URI, "back up" to the last '/' encountered.  This will be the
-	 * beginning of the "unique" suffix of URI
-	 */
-	ix = pos;
-	if ((ref->path[ix] == '/') && (ix > 0))
-	    ix--;
-	else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
-	    ix -= 2;
-	for (; ix > 0; ix--) {
-	    if (ref->path[ix] == '/')
-		break;
-	}
-	if (ix == 0) {
-	    uptr = ref->path;
-	} else {
-	    ix++;
-	    uptr = &ref->path[ix];
-	}
+        /*
+         * In URI, "back up" to the last '/' encountered.  This will be the
+         * beginning of the "unique" suffix of URI
+         */
+        ix = pos;
+        if ((ref->path[ix] == '/') && (ix > 0))
+            ix--;
+        else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
+            ix -= 2;
+        for (; ix > 0; ix--) {
+            if (ref->path[ix] == '/')
+                break;
+        }
+        if (ix == 0) {
+            uptr = ref->path;
+        } else {
+            ix++;
+            uptr = &ref->path[ix];
+        }
 
-	/*
-	 * In base, count the number of '/' from the differing point
-	 */
-	if (bptr[pos] != ref->path[pos]) {/* check for trivial URI == base */
-	    for (; bptr[ix] != 0; ix++) {
-		if (bptr[ix] == '/')
-		    nbslash++;
-	    }
-	}
-	len = strlen (uptr) + 1;
+        /*
+         * In base, count the number of '/' from the differing point
+         */
+        if (bptr[pos] != ref->path[pos]) { /* check for trivial URI == base */
+            for (; bptr[ix] != 0; ix++) {
+                if (bptr[ix] == '/')
+                    nbslash++;
+            }
+        }
+        len = strlen(uptr) + 1;
     }
 
     if (nbslash == 0) {
-	if (uptr != NULL)
-	    /* exception characters from uri_to_string */
-	    val = uri_string_escape(uptr, "/;&=+$,");
-	goto done;
+        if (uptr != NULL)
+            /* exception characters from uri_to_string */
+            val = uri_string_escape(uptr, "/;&=+$,");
+        goto done;
     }
 
     /*
@@ -2037,35 +2039,35 @@ uri_resolve_relative (const char *uri, const char * base)
      * length of the remainder of the URI, plus enough space
      * for the "../" groups, plus one for the terminator
      */
-    val = g_malloc (len + 3 * nbslash);
+    val = g_malloc(len + 3 * nbslash);
     vptr = val;
     /*
      * Put in as many "../" as needed
      */
-    for (; nbslash>0; nbslash--) {
-	*vptr++ = '.';
-	*vptr++ = '.';
-	*vptr++ = '/';
+    for (; nbslash > 0; nbslash--) {
+        *vptr++ = '.';
+        *vptr++ = '.';
+        *vptr++ = '/';
     }
     /*
      * Finish up with the end of the URI
      */
     if (uptr != NULL) {
-        if ((vptr > val) && (len > 0) &&
-	    (uptr[0] == '/') && (vptr[-1] == '/')) {
-	    memcpy (vptr, uptr + 1, len - 1);
-	    vptr[len - 2] = 0;
-	} else {
-	    memcpy (vptr, uptr, len);
-	    vptr[len - 1] = 0;
-	}
+        if ((vptr > val) && (len > 0) && (uptr[0] == '/') &&
+            (vptr[-1] == '/')) {
+            memcpy(vptr, uptr + 1, len - 1);
+            vptr[len - 2] = 0;
+        } else {
+            memcpy(vptr, uptr, len);
+            vptr[len - 1] = 0;
+        }
     } else {
-	vptr[len - 1] = 0;
+        vptr[len - 1] = 0;
     }
 
     /* escape the freshly-built path */
     vptr = val;
-	/* exception characters from uri_to_string */
+    /* exception characters from uri_to_string */
     val = uri_string_escape(vptr, "/;&=+$,");
     g_free(vptr);
 
@@ -2076,9 +2078,9 @@ done:
     if (remove_path != 0)
         ref->path = NULL;
     if (ref != NULL)
-	uri_free (ref);
+        uri_free(ref);
     if (bas != NULL)
-	uri_free (bas);
+        uri_free(bas);
 
     return val;
 }
@@ -2087,12 +2089,12 @@ done:
  * Utility functions to help parse and assemble query strings.
  */
 
-struct QueryParams *
-query_params_new (int init_alloc)
+struct QueryParams *query_params_new(int init_alloc)
 {
     struct QueryParams *ps;
 
-    if (init_alloc <= 0) init_alloc = 1;
+    if (init_alloc <= 0)
+        init_alloc = 1;
 
     ps = g_new(QueryParams, 1);
     ps->n = 0;
@@ -2105,9 +2107,8 @@ query_params_new (int init_alloc)
 /* Ensure there is space to store at least one more parameter
  * at the end of the set.
  */
-static int
-query_params_append (struct QueryParams *ps,
-               const char *name, const char *value)
+static int query_params_append(struct QueryParams *ps, const char *name,
+                               const char *value)
 {
     if (ps->n >= ps->alloc) {
         ps->p = g_renew(QueryParam, ps->p, ps->alloc * 2);
@@ -2122,41 +2123,41 @@ query_params_append (struct QueryParams *ps,
     return 0;
 }
 
-void
-query_params_free (struct QueryParams *ps)
+void query_params_free(struct QueryParams *ps)
 {
     int i;
 
     for (i = 0; i < ps->n; ++i) {
-        g_free (ps->p[i].name);
-        g_free (ps->p[i].value);
+        g_free(ps->p[i].name);
+        g_free(ps->p[i].value);
     }
-    g_free (ps->p);
-    g_free (ps);
+    g_free(ps->p);
+    g_free(ps);
 }
 
-struct QueryParams *
-query_params_parse (const char *query)
+struct QueryParams *query_params_parse(const char *query)
 {
     struct QueryParams *ps;
     const char *end, *eq;
 
-    ps = query_params_new (0);
-    if (!query || query[0] == '\0') return ps;
+    ps = query_params_new(0);
+    if (!query || query[0] == '\0')
+        return ps;
 
     while (*query) {
         char *name = NULL, *value = NULL;
 
         /* Find the next separator, or end of the string. */
-        end = strchr (query, '&');
+        end = strchr(query, '&');
         if (!end)
-            end = strchr (query, ';');
+            end = strchr(query, ';');
         if (!end)
-            end = query + strlen (query);
+            end = query + strlen(query);
 
         /* Find the first '=' character between here and end. */
-        eq = strchr (query, '=');
-        if (eq && eq >= end) eq = NULL;
+        eq = strchr(query, '=');
+        if (eq && eq >= end)
+            eq = NULL;
 
         /* Empty section (eg. "&&"). */
         if (end == query)
@@ -2166,14 +2167,14 @@ query_params_parse (const char *query)
          * and consistent with CGI.pm we assume value is "".
          */
         else if (!eq) {
-            name = uri_string_unescape (query, end - query, NULL);
+            name = uri_string_unescape(query, end - query, NULL);
             value = NULL;
         }
         /* Or if we have "name=" here (works around annoying
          * problem when calling uri_string_unescape with len = 0).
          */
-        else if (eq+1 == end) {
-            name = uri_string_unescape (query, eq - query, NULL);
+        else if (eq + 1 == end) {
+            name = uri_string_unescape(query, eq - query, NULL);
             value = g_new0(char, 1);
         }
         /* If the '=' character is at the beginning then we have
@@ -2184,18 +2185,19 @@ query_params_parse (const char *query)
 
         /* Otherwise it's "name=value". */
         else {
-            name = uri_string_unescape (query, eq - query, NULL);
-            value = uri_string_unescape (eq+1, end - (eq+1), NULL);
+            name = uri_string_unescape(query, eq - query, NULL);
+            value = uri_string_unescape(eq + 1, end - (eq + 1), NULL);
         }
 
         /* Append to the parameter set. */
-        query_params_append (ps, name, value);
+        query_params_append(ps, name, value);
         g_free(name);
         g_free(value);
 
     next:
         query = end;
-        if (*query) query ++; /* skip '&' separator */
+        if (*query)
+            query++; /* skip '&' separator */
     }
 
     return ps;
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 2/6] util/uri.c: remove brackets that wrap `return` statement's content.
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 1/6] util/uri.c: Coding style check, Only whitespace involved Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 3/6] util/uri.c: wrap single statement blocks with braces {} Stefan Hajnoczi
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Su Hang, Stefan Hajnoczi

From: Su Hang <suhang16@mails.ucas.ac.cn>

only remove brackets that wrap `return` statements' content.

use `perl -pi -e "s/return \((.*?)\);/return \1;/g" util/uri.c`
to remove pattern like this: "return (1);"

Signed-off-by: Su Hang <suhang16@mails.ucas.ac.cn>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 1519533358-13759-3-git-send-email-suhang16@mails.ucas.ac.cn
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 util/uri.c | 160 ++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 80 insertions(+), 80 deletions(-)

diff --git a/util/uri.c b/util/uri.c
index cf09f41735..bb2576cf21 100644
--- a/util/uri.c
+++ b/util/uri.c
@@ -212,11 +212,11 @@ static int rfc3986_parse_scheme(URI *uri, const char **str)
     const char *cur;
 
     if (str == NULL)
-        return (-1);
+        return -1;
 
     cur = *str;
     if (!ISA_ALPHA(cur))
-        return (2);
+        return 2;
     cur++;
     while (ISA_ALPHA(cur) || ISA_DIGIT(cur) || (*cur == '+') || (*cur == '-') ||
            (*cur == '.'))
@@ -226,7 +226,7 @@ static int rfc3986_parse_scheme(URI *uri, const char **str)
         uri->scheme = g_strndup(*str, cur - *str);
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -249,7 +249,7 @@ static int rfc3986_parse_fragment(URI *uri, const char **str)
     const char *cur;
 
     if (str == NULL)
-        return (-1);
+        return -1;
 
     cur = *str;
 
@@ -265,7 +265,7 @@ static int rfc3986_parse_fragment(URI *uri, const char **str)
             uri->fragment = uri_string_unescape(*str, cur - *str, NULL);
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -284,7 +284,7 @@ static int rfc3986_parse_query(URI *uri, const char **str)
     const char *cur;
 
     if (str == NULL)
-        return (-1);
+        return -1;
 
     cur = *str;
 
@@ -296,7 +296,7 @@ static int rfc3986_parse_query(URI *uri, const char **str)
         uri->query = g_strndup(*str, cur - *str);
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -362,9 +362,9 @@ static int rfc3986_parse_user_info(URI *uri, const char **str)
                 uri->user = uri_string_unescape(*str, cur - *str, NULL);
         }
         *str = cur;
-        return (0);
+        return 0;
     }
-    return (1);
+    return 1;
 }
 
 /**
@@ -386,7 +386,7 @@ static int rfc3986_parse_dec_octet(const char **str)
     const char *cur = *str;
 
     if (!(ISA_DIGIT(cur)))
-        return (1);
+        return 1;
     if (!ISA_DIGIT(cur + 1))
         cur++;
     else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2)))
@@ -400,9 +400,9 @@ static int rfc3986_parse_dec_octet(const char **str)
              (*(cur + 1) <= '5'))
         cur += 3;
     else
-        return (1);
+        return 1;
     *str = cur;
-    return (0);
+    return 0;
 }
 /**
  * rfc3986_parse_host:
@@ -433,7 +433,7 @@ static int rfc3986_parse_host(URI *uri, const char **str)
         while ((*cur != ']') && (*cur != 0))
             cur++;
         if (*cur != ']')
-            return (1);
+            return 1;
         cur++;
         goto found;
     }
@@ -479,7 +479,7 @@ found:
             uri->server = NULL;
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -510,15 +510,15 @@ static int rfc3986_parse_authority(URI *uri, const char **str)
         cur++;
     ret = rfc3986_parse_host(uri, &cur);
     if (ret != 0)
-        return (ret);
+        return ret;
     if (*cur == ':') {
         cur++;
         ret = rfc3986_parse_port(uri, &cur);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -544,13 +544,13 @@ static int rfc3986_parse_segment(const char **str, char forbid, int empty)
     cur = *str;
     if (!ISA_PCHAR(cur)) {
         if (empty)
-            return (0);
-        return (1);
+            return 0;
+        return 1;
     }
     while (ISA_PCHAR(cur) && (*cur != forbid))
         NEXT(cur);
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -576,7 +576,7 @@ static int rfc3986_parse_path_ab_empty(URI *uri, const char **str)
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -590,7 +590,7 @@ static int rfc3986_parse_path_ab_empty(URI *uri, const char **str)
         }
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -613,7 +613,7 @@ static int rfc3986_parse_path_absolute(URI *uri, const char **str)
     cur = *str;
 
     if (*cur != '/')
-        return (1);
+        return 1;
     cur++;
     ret = rfc3986_parse_segment(&cur, 0, 0);
     if (ret == 0) {
@@ -621,7 +621,7 @@ static int rfc3986_parse_path_absolute(URI *uri, const char **str)
             cur++;
             ret = rfc3986_parse_segment(&cur, 0, 1);
             if (ret != 0)
-                return (ret);
+                return ret;
         }
     }
     if (uri != NULL) {
@@ -636,7 +636,7 @@ static int rfc3986_parse_path_absolute(URI *uri, const char **str)
         }
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -660,12 +660,12 @@ static int rfc3986_parse_path_rootless(URI *uri, const char **str)
 
     ret = rfc3986_parse_segment(&cur, 0, 0);
     if (ret != 0)
-        return (ret);
+        return ret;
     while (*cur == '/') {
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -679,7 +679,7 @@ static int rfc3986_parse_path_rootless(URI *uri, const char **str)
         }
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -703,12 +703,12 @@ static int rfc3986_parse_path_no_scheme(URI *uri, const char **str)
 
     ret = rfc3986_parse_segment(&cur, ':', 0);
     if (ret != 0)
-        return (ret);
+        return ret;
     while (*cur == '/') {
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (uri != NULL) {
         g_free(uri->path);
@@ -722,7 +722,7 @@ static int rfc3986_parse_path_no_scheme(URI *uri, const char **str)
         }
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -751,20 +751,20 @@ static int rfc3986_parse_hier_part(URI *uri, const char **str)
         cur += 2;
         ret = rfc3986_parse_authority(uri, &cur);
         if (ret != 0)
-            return (ret);
+            return ret;
         ret = rfc3986_parse_path_ab_empty(uri, &cur);
         if (ret != 0)
-            return (ret);
+            return ret;
         *str = cur;
-        return (0);
+        return 0;
     } else if (*cur == '/') {
         ret = rfc3986_parse_path_absolute(uri, &cur);
         if (ret != 0)
-            return (ret);
+            return ret;
     } else if (ISA_PCHAR(cur)) {
         ret = rfc3986_parse_path_rootless(uri, &cur);
         if (ret != 0)
-            return (ret);
+            return ret;
     } else {
         /* path-empty is effectively empty */
         if (uri != NULL) {
@@ -773,7 +773,7 @@ static int rfc3986_parse_hier_part(URI *uri, const char **str)
         }
     }
     *str = cur;
-    return (0);
+    return 0;
 }
 
 /**
@@ -800,18 +800,18 @@ static int rfc3986_parse_relative_ref(URI *uri, const char *str)
         str += 2;
         ret = rfc3986_parse_authority(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
         ret = rfc3986_parse_path_ab_empty(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     } else if (*str == '/') {
         ret = rfc3986_parse_path_absolute(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     } else if (ISA_PCHAR(str)) {
         ret = rfc3986_parse_path_no_scheme(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     } else {
         /* path-empty is effectively empty */
         if (uri != NULL) {
@@ -824,19 +824,19 @@ static int rfc3986_parse_relative_ref(URI *uri, const char *str)
         str++;
         ret = rfc3986_parse_query(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (*str == '#') {
         str++;
         ret = rfc3986_parse_fragment(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (*str != 0) {
         uri_clean(uri);
-        return (1);
+        return 1;
     }
-    return (0);
+    return 0;
 }
 
 /**
@@ -857,31 +857,31 @@ static int rfc3986_parse(URI *uri, const char *str)
 
     ret = rfc3986_parse_scheme(uri, &str);
     if (ret != 0)
-        return (ret);
+        return ret;
     if (*str != ':') {
-        return (1);
+        return 1;
     }
     str++;
     ret = rfc3986_parse_hier_part(uri, &str);
     if (ret != 0)
-        return (ret);
+        return ret;
     if (*str == '?') {
         str++;
         ret = rfc3986_parse_query(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (*str == '#') {
         str++;
         ret = rfc3986_parse_fragment(uri, &str);
         if (ret != 0)
-            return (ret);
+            return ret;
     }
     if (*str != 0) {
         uri_clean(uri);
-        return (1);
+        return 1;
     }
-    return (0);
+    return 0;
 }
 
 /**
@@ -901,7 +901,7 @@ static int rfc3986_parse_uri_reference(URI *uri, const char *str)
     int ret;
 
     if (str == NULL)
-        return (-1);
+        return -1;
     uri_clean(uri);
 
     /*
@@ -914,10 +914,10 @@ static int rfc3986_parse_uri_reference(URI *uri, const char *str)
         ret = rfc3986_parse_relative_ref(uri, str);
         if (ret != 0) {
             uri_clean(uri);
-            return (ret);
+            return ret;
         }
     }
-    return (0);
+    return 0;
 }
 
 /**
@@ -936,14 +936,14 @@ URI *uri_parse(const char *str)
     int ret;
 
     if (str == NULL)
-        return (NULL);
+        return NULL;
     uri = uri_new();
     ret = rfc3986_parse_uri_reference(uri, str);
     if (ret) {
         uri_free(uri);
-        return (NULL);
+        return NULL;
     }
-    return (uri);
+    return uri;
 }
 
 /**
@@ -960,7 +960,7 @@ URI *uri_parse(const char *str)
  */
 int uri_parse_into(URI *uri, const char *str)
 {
-    return (rfc3986_parse_uri_reference(uri, str));
+    return rfc3986_parse_uri_reference(uri, str);
 }
 
 /**
@@ -980,7 +980,7 @@ URI *uri_parse_raw(const char *str, int raw)
     int ret;
 
     if (str == NULL)
-        return (NULL);
+        return NULL;
     uri = uri_new();
     if (raw) {
         uri->cleanup |= 2;
@@ -988,9 +988,9 @@ URI *uri_parse_raw(const char *str, int raw)
     ret = uri_parse_into(uri, str);
     if (ret) {
         uri_free(uri);
-        return (NULL);
+        return NULL;
     }
-    return (uri);
+    return uri;
 }
 
 /************************************************************************
@@ -1011,7 +1011,7 @@ URI *uri_new(void)
     URI *ret;
 
     ret = g_new0(URI, 1);
-    return (ret);
+    return ret;
 }
 
 /**
@@ -1028,7 +1028,7 @@ static char *realloc2n(char *ret, int *max)
     tmp = *max * 2;
     temp = g_realloc(ret, (tmp + 1));
     *max = tmp;
-    return (temp);
+    return temp;
 }
 
 /**
@@ -1048,7 +1048,7 @@ char *uri_to_string(URI *uri)
     int max;
 
     if (uri == NULL)
-        return (NULL);
+        return NULL;
 
     max = 80;
     ret = g_malloc(max + 1);
@@ -1249,7 +1249,7 @@ char *uri_to_string(URI *uri)
         ret = temp;
     }
     ret[len] = 0;
-    return (ret);
+    return ret;
 }
 
 /**
@@ -1315,7 +1315,7 @@ static int normalize_uri_path(char *path)
     char *cur, *out;
 
     if (path == NULL)
-        return (-1);
+        return -1;
 
     /* Skip all initial "/" chars.  We want to get to the beginning of the
      * first non-empty segment.
@@ -1324,7 +1324,7 @@ static int normalize_uri_path(char *path)
     while (cur[0] == '/')
         ++cur;
     if (cur[0] == '\0')
-        return (0);
+        return 0;
 
     /* Keep everything we've seen so far.  */
     out = cur;
@@ -1372,7 +1372,7 @@ done_cd:
     while (cur[0] == '/')
         ++cur;
     if (cur[0] == '\0')
-        return (0);
+        return 0;
 
     /*
      * Analyze each segment in sequence for cases (e) and (f).
@@ -1485,15 +1485,15 @@ done_cd:
         }
     }
 
-    return (0);
+    return 0;
 }
 
 static int is_hex(char c)
 {
     if (((c >= '0') && (c <= '9')) || ((c >= 'a') && (c <= 'f')) ||
         ((c >= 'A') && (c <= 'F')))
-        return (1);
-    return (0);
+        return 1;
+    return 0;
 }
 
 /**
@@ -1516,11 +1516,11 @@ char *uri_string_unescape(const char *str, int len, char *target)
     const char *in;
 
     if (str == NULL)
-        return (NULL);
+        return NULL;
     if (len <= 0)
         len = strlen(str);
     if (len < 0)
-        return (NULL);
+        return NULL;
 
     if (target == NULL) {
         ret = g_malloc(len + 1);
@@ -1553,7 +1553,7 @@ char *uri_string_unescape(const char *str, int len, char *target)
         }
     }
     *out = 0;
-    return (ret);
+    return ret;
 }
 
 /**
@@ -1574,12 +1574,12 @@ char *uri_string_escape(const char *str, const char *list)
     int len, out;
 
     if (str == NULL)
-        return (NULL);
+        return NULL;
     if (str[0] == 0)
-        return (g_strdup(str));
+        return g_strdup(str);
     len = strlen(str);
     if (!(len > 0))
-        return (NULL);
+        return NULL;
 
     len += 20;
     ret = g_malloc(len);
@@ -1612,7 +1612,7 @@ char *uri_string_escape(const char *str, const char *list)
         }
     }
     ret[out] = 0;
-    return (ret);
+    return ret;
 }
 
 /************************************************************************
@@ -1851,7 +1851,7 @@ done:
         uri_free(bas);
     if (res != NULL)
         uri_free(res);
-    return (val);
+    return val;
 }
 
 /**
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 3/6] util/uri.c: wrap single statement blocks with braces {}
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 1/6] util/uri.c: Coding style check, Only whitespace involved Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 2/6] util/uri.c: remove brackets that wrap `return` statement's content Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 4/6] tests/libqos: Check for valid dev pointer when looking for PCI devices Stefan Hajnoczi
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Su Hang, Stefan Hajnoczi

From: Su Hang <suhang16@mails.ucas.ac.cn>

For this patch, using curly braces to wrap `if` `while` `else` statements,
which only hold single statement. For example:
'''
if (cond)
    statement;
'''
to
'''
if (cond) {
    statement;
}
'''

And using tricks that compare the disassemblies before and after
code changes, to make sure code logic isn't changed:
'''
git checkout master
make util/uri.o
strip util/uri.o
objdump -Drx util/uri.o > /tmp/uri-master.txt
git checkout cleanupbranch
make util/uri.o
strip util/uri.o
objdump -Drx util/uri.o > /tmp/uri-cleanup.txt

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 util/uri.c | 463 +++++++++++++++++++++++++++++++++++++++----------------------
 1 file changed, 294 insertions(+), 169 deletions(-)

diff --git a/util/uri.c b/util/uri.c
index bb2576cf21..93ecefdaaf 100644
--- a/util/uri.c
+++ b/util/uri.c
@@ -211,16 +211,19 @@ static int rfc3986_parse_scheme(URI *uri, const char **str)
 {
     const char *cur;
 
-    if (str == NULL)
+    if (str == NULL) {
         return -1;
+    }
 
     cur = *str;
-    if (!ISA_ALPHA(cur))
+    if (!ISA_ALPHA(cur)) {
         return 2;
+    }
     cur++;
     while (ISA_ALPHA(cur) || ISA_DIGIT(cur) || (*cur == '+') || (*cur == '-') ||
-           (*cur == '.'))
+           (*cur == '.')) {
         cur++;
+    }
     if (uri != NULL) {
         g_free(uri->scheme);
         uri->scheme = g_strndup(*str, cur - *str);
@@ -248,21 +251,24 @@ static int rfc3986_parse_fragment(URI *uri, const char **str)
 {
     const char *cur;
 
-    if (str == NULL)
+    if (str == NULL) {
         return -1;
+    }
 
     cur = *str;
 
     while ((ISA_PCHAR(cur)) || (*cur == '/') || (*cur == '?') ||
            (*cur == '[') || (*cur == ']') ||
-           ((uri != NULL) && (uri->cleanup & 1) && (IS_UNWISE(cur))))
+           ((uri != NULL) && (uri->cleanup & 1) && (IS_UNWISE(cur)))) {
         NEXT(cur);
+    }
     if (uri != NULL) {
         g_free(uri->fragment);
-        if (uri->cleanup & 2)
+        if (uri->cleanup & 2) {
             uri->fragment = g_strndup(*str, cur - *str);
-        else
+        } else {
             uri->fragment = uri_string_unescape(*str, cur - *str, NULL);
+        }
     }
     *str = cur;
     return 0;
@@ -283,14 +289,16 @@ static int rfc3986_parse_query(URI *uri, const char **str)
 {
     const char *cur;
 
-    if (str == NULL)
+    if (str == NULL) {
         return -1;
+    }
 
     cur = *str;
 
     while ((ISA_PCHAR(cur)) || (*cur == '/') || (*cur == '?') ||
-           ((uri != NULL) && (uri->cleanup & 1) && (IS_UNWISE(cur))))
+           ((uri != NULL) && (uri->cleanup & 1) && (IS_UNWISE(cur)))) {
         NEXT(cur);
+    }
     if (uri != NULL) {
         g_free(uri->query);
         uri->query = g_strndup(*str, cur - *str);
@@ -351,15 +359,17 @@ static int rfc3986_parse_user_info(URI *uri, const char **str)
 
     cur = *str;
     while (ISA_UNRESERVED(cur) || ISA_PCT_ENCODED(cur) || ISA_SUB_DELIM(cur) ||
-           (*cur == ':'))
+           (*cur == ':')) {
         NEXT(cur);
+    }
     if (*cur == '@') {
         if (uri != NULL) {
             g_free(uri->user);
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->user = g_strndup(*str, cur - *str);
-            else
+            } else {
                 uri->user = uri_string_unescape(*str, cur - *str, NULL);
+            }
         }
         *str = cur;
         return 0;
@@ -385,22 +395,24 @@ static int rfc3986_parse_dec_octet(const char **str)
 {
     const char *cur = *str;
 
-    if (!(ISA_DIGIT(cur)))
+    if (!(ISA_DIGIT(cur))) {
         return 1;
-    if (!ISA_DIGIT(cur + 1))
+    }
+    if (!ISA_DIGIT(cur + 1)) {
         cur++;
-    else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2)))
+    } else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2))) {
         cur += 2;
-    else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2)))
+    } else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2))) {
         cur += 3;
-    else if ((*cur == '2') && (*(cur + 1) >= '0') && (*(cur + 1) <= '4') &&
-             (ISA_DIGIT(cur + 2)))
+    } else if ((*cur == '2') && (*(cur + 1) >= '0') && (*(cur + 1) <= '4') &&
+             (ISA_DIGIT(cur + 2))) {
         cur += 3;
-    else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') &&
-             (*(cur + 1) <= '5'))
+    } else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') &&
+             (*(cur + 1) <= '5')) {
         cur += 3;
-    else
+    } else {
         return 1;
+    }
     *str = cur;
     return 0;
 }
@@ -430,10 +442,12 @@ static int rfc3986_parse_host(URI *uri, const char **str)
      */
     if (*cur == '[') {
         cur++;
-        while ((*cur != ']') && (*cur != 0))
+        while ((*cur != ']') && (*cur != 0)) {
             cur++;
-        if (*cur != ']')
+        }
+        if (*cur != ']') {
             return 1;
+        }
         cur++;
         goto found;
     }
@@ -441,21 +455,28 @@ static int rfc3986_parse_host(URI *uri, const char **str)
      * try to parse an IPv4
      */
     if (ISA_DIGIT(cur)) {
-        if (rfc3986_parse_dec_octet(&cur) != 0)
+        if (rfc3986_parse_dec_octet(&cur) != 0) {
             goto not_ipv4;
-        if (*cur != '.')
+        }
+        if (*cur != '.') {
             goto not_ipv4;
+        }
         cur++;
-        if (rfc3986_parse_dec_octet(&cur) != 0)
+        if (rfc3986_parse_dec_octet(&cur) != 0) {
             goto not_ipv4;
-        if (*cur != '.')
+        }
+        if (*cur != '.') {
             goto not_ipv4;
-        if (rfc3986_parse_dec_octet(&cur) != 0)
+        }
+        if (rfc3986_parse_dec_octet(&cur) != 0) {
             goto not_ipv4;
-        if (*cur != '.')
+        }
+        if (*cur != '.') {
             goto not_ipv4;
-        if (rfc3986_parse_dec_octet(&cur) != 0)
+        }
+        if (rfc3986_parse_dec_octet(&cur) != 0) {
             goto not_ipv4;
+        }
         goto found;
     not_ipv4:
         cur = *str;
@@ -463,20 +484,23 @@ static int rfc3986_parse_host(URI *uri, const char **str)
     /*
      * then this should be a hostname which can be empty
      */
-    while (ISA_UNRESERVED(cur) || ISA_PCT_ENCODED(cur) || ISA_SUB_DELIM(cur))
+    while (ISA_UNRESERVED(cur) || ISA_PCT_ENCODED(cur) || ISA_SUB_DELIM(cur)) {
         NEXT(cur);
+    }
 found:
     if (uri != NULL) {
         g_free(uri->authority);
         uri->authority = NULL;
         g_free(uri->server);
         if (cur != host) {
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->server = g_strndup(host, cur - host);
-            else
+            } else {
                 uri->server = uri_string_unescape(host, cur - host, NULL);
-        } else
+            }
+        } else {
             uri->server = NULL;
+        }
     }
     *str = cur;
     return 0;
@@ -504,18 +528,21 @@ static int rfc3986_parse_authority(URI *uri, const char **str)
      * try to parse a userinfo and check for the trailing @
      */
     ret = rfc3986_parse_user_info(uri, &cur);
-    if ((ret != 0) || (*cur != '@'))
+    if ((ret != 0) || (*cur != '@')) {
         cur = *str;
-    else
+    } else {
         cur++;
+    }
     ret = rfc3986_parse_host(uri, &cur);
-    if (ret != 0)
+    if (ret != 0) {
         return ret;
+    }
     if (*cur == ':') {
         cur++;
         ret = rfc3986_parse_port(uri, &cur);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     *str = cur;
     return 0;
@@ -543,12 +570,14 @@ static int rfc3986_parse_segment(const char **str, char forbid, int empty)
 
     cur = *str;
     if (!ISA_PCHAR(cur)) {
-        if (empty)
+        if (empty) {
             return 0;
+        }
         return 1;
     }
-    while (ISA_PCHAR(cur) && (*cur != forbid))
+    while (ISA_PCHAR(cur) && (*cur != forbid)) {
         NEXT(cur);
+    }
     *str = cur;
     return 0;
 }
@@ -575,16 +604,18 @@ static int rfc3986_parse_path_ab_empty(URI *uri, const char **str)
     while (*cur == '/') {
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (uri != NULL) {
         g_free(uri->path);
         if (*str != cur) {
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->path = g_strndup(*str, cur - *str);
-            else
+            } else {
                 uri->path = uri_string_unescape(*str, cur - *str, NULL);
+            }
         } else {
             uri->path = NULL;
         }
@@ -612,25 +643,28 @@ static int rfc3986_parse_path_absolute(URI *uri, const char **str)
 
     cur = *str;
 
-    if (*cur != '/')
+    if (*cur != '/') {
         return 1;
+    }
     cur++;
     ret = rfc3986_parse_segment(&cur, 0, 0);
     if (ret == 0) {
         while (*cur == '/') {
             cur++;
             ret = rfc3986_parse_segment(&cur, 0, 1);
-            if (ret != 0)
+            if (ret != 0) {
                 return ret;
+            }
         }
     }
     if (uri != NULL) {
         g_free(uri->path);
         if (cur != *str) {
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->path = g_strndup(*str, cur - *str);
-            else
+            } else {
                 uri->path = uri_string_unescape(*str, cur - *str, NULL);
+            }
         } else {
             uri->path = NULL;
         }
@@ -659,21 +693,24 @@ static int rfc3986_parse_path_rootless(URI *uri, const char **str)
     cur = *str;
 
     ret = rfc3986_parse_segment(&cur, 0, 0);
-    if (ret != 0)
+    if (ret != 0) {
         return ret;
+    }
     while (*cur == '/') {
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (uri != NULL) {
         g_free(uri->path);
         if (cur != *str) {
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->path = g_strndup(*str, cur - *str);
-            else
+            } else {
                 uri->path = uri_string_unescape(*str, cur - *str, NULL);
+            }
         } else {
             uri->path = NULL;
         }
@@ -702,21 +739,24 @@ static int rfc3986_parse_path_no_scheme(URI *uri, const char **str)
     cur = *str;
 
     ret = rfc3986_parse_segment(&cur, ':', 0);
-    if (ret != 0)
+    if (ret != 0) {
         return ret;
+    }
     while (*cur == '/') {
         cur++;
         ret = rfc3986_parse_segment(&cur, 0, 1);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (uri != NULL) {
         g_free(uri->path);
         if (cur != *str) {
-            if (uri->cleanup & 2)
+            if (uri->cleanup & 2) {
                 uri->path = g_strndup(*str, cur - *str);
-            else
+            } else {
                 uri->path = uri_string_unescape(*str, cur - *str, NULL);
+            }
         } else {
             uri->path = NULL;
         }
@@ -750,21 +790,25 @@ static int rfc3986_parse_hier_part(URI *uri, const char **str)
     if ((*cur == '/') && (*(cur + 1) == '/')) {
         cur += 2;
         ret = rfc3986_parse_authority(uri, &cur);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
         ret = rfc3986_parse_path_ab_empty(uri, &cur);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
         *str = cur;
         return 0;
     } else if (*cur == '/') {
         ret = rfc3986_parse_path_absolute(uri, &cur);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     } else if (ISA_PCHAR(cur)) {
         ret = rfc3986_parse_path_rootless(uri, &cur);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     } else {
         /* path-empty is effectively empty */
         if (uri != NULL) {
@@ -799,19 +843,23 @@ static int rfc3986_parse_relative_ref(URI *uri, const char *str)
     if ((*str == '/') && (*(str + 1) == '/')) {
         str += 2;
         ret = rfc3986_parse_authority(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
         ret = rfc3986_parse_path_ab_empty(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     } else if (*str == '/') {
         ret = rfc3986_parse_path_absolute(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     } else if (ISA_PCHAR(str)) {
         ret = rfc3986_parse_path_no_scheme(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     } else {
         /* path-empty is effectively empty */
         if (uri != NULL) {
@@ -823,14 +871,16 @@ static int rfc3986_parse_relative_ref(URI *uri, const char *str)
     if (*str == '?') {
         str++;
         ret = rfc3986_parse_query(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (*str == '#') {
         str++;
         ret = rfc3986_parse_fragment(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (*str != 0) {
         uri_clean(uri);
@@ -856,26 +906,30 @@ static int rfc3986_parse(URI *uri, const char *str)
     int ret;
 
     ret = rfc3986_parse_scheme(uri, &str);
-    if (ret != 0)
+    if (ret != 0) {
         return ret;
+    }
     if (*str != ':') {
         return 1;
     }
     str++;
     ret = rfc3986_parse_hier_part(uri, &str);
-    if (ret != 0)
+    if (ret != 0) {
         return ret;
+    }
     if (*str == '?') {
         str++;
         ret = rfc3986_parse_query(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (*str == '#') {
         str++;
         ret = rfc3986_parse_fragment(uri, &str);
-        if (ret != 0)
+        if (ret != 0) {
             return ret;
+        }
     }
     if (*str != 0) {
         uri_clean(uri);
@@ -900,8 +954,9 @@ static int rfc3986_parse_uri_reference(URI *uri, const char *str)
 {
     int ret;
 
-    if (str == NULL)
+    if (str == NULL) {
         return -1;
+    }
     uri_clean(uri);
 
     /*
@@ -935,8 +990,9 @@ URI *uri_parse(const char *str)
     URI *uri;
     int ret;
 
-    if (str == NULL)
+    if (str == NULL) {
         return NULL;
+    }
     uri = uri_new();
     ret = rfc3986_parse_uri_reference(uri, str);
     if (ret) {
@@ -979,8 +1035,9 @@ URI *uri_parse_raw(const char *str, int raw)
     URI *uri;
     int ret;
 
-    if (str == NULL)
+    if (str == NULL) {
         return NULL;
+    }
     uri = uri_new();
     if (raw) {
         uri->cleanup |= 2;
@@ -1047,8 +1104,9 @@ char *uri_to_string(URI *uri)
     int len;
     int max;
 
-    if (uri == NULL)
+    if (uri == NULL) {
         return NULL;
+    }
 
     max = 80;
     ret = g_malloc(max + 1);
@@ -1076,9 +1134,9 @@ char *uri_to_string(URI *uri)
                 temp = realloc2n(ret, &max);
                 ret = temp;
             }
-            if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p)))
+            if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p))) {
                 ret[len++] = *p++;
-            else {
+            } else {
                 int val = *(unsigned char *)p++;
                 int hi = val / 0x10, lo = val % 0x10;
                 ret[len++] = '%';
@@ -1103,9 +1161,9 @@ char *uri_to_string(URI *uri)
                     }
                     if ((IS_UNRESERVED(*(p))) || ((*(p) == ';')) ||
                         ((*(p) == ':')) || ((*(p) == '&')) || ((*(p) == '=')) ||
-                        ((*(p) == '+')) || ((*(p) == '$')) || ((*(p) == ',')))
+                        ((*(p) == '+')) || ((*(p) == '$')) || ((*(p) == ','))) {
                         ret[len++] = *p++;
-                    else {
+                    } else {
                         int val = *(unsigned char *)p++;
                         int hi = val / 0x10, lo = val % 0x10;
                         ret[len++] = '%';
@@ -1150,9 +1208,9 @@ char *uri_to_string(URI *uri)
                 if ((IS_UNRESERVED(*(p))) || ((*(p) == '$')) ||
                     ((*(p) == ',')) || ((*(p) == ';')) || ((*(p) == ':')) ||
                     ((*(p) == '@')) || ((*(p) == '&')) || ((*(p) == '=')) ||
-                    ((*(p) == '+')))
+                    ((*(p) == '+'))) {
                     ret[len++] = *p++;
-                else {
+                } else {
                     int val = *(unsigned char *)p++;
                     int hi = val / 0x10, lo = val % 0x10;
                     ret[len++] = '%';
@@ -1194,9 +1252,9 @@ char *uri_to_string(URI *uri)
                 if ((IS_UNRESERVED(*(p))) || ((*(p) == '/')) ||
                     ((*(p) == ';')) || ((*(p) == '@')) || ((*(p) == '&')) ||
                     ((*(p) == '=')) || ((*(p) == '+')) || ((*(p) == '$')) ||
-                    ((*(p) == ',')))
+                    ((*(p) == ','))) {
                     ret[len++] = *p++;
-                else {
+                } else {
                     int val = *(unsigned char *)p++;
                     int hi = val / 0x10, lo = val % 0x10;
                     ret[len++] = '%';
@@ -1233,9 +1291,9 @@ char *uri_to_string(URI *uri)
                 temp = realloc2n(ret, &max);
                 ret = temp;
             }
-            if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p))))
+            if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p)))) {
                 ret[len++] = *p++;
-            else {
+            } else {
                 int val = *(unsigned char *)p++;
                 int hi = val / 0x10, lo = val % 0x10;
                 ret[len++] = '%';
@@ -1260,8 +1318,9 @@ char *uri_to_string(URI *uri)
  */
 static void uri_clean(URI *uri)
 {
-    if (uri == NULL)
+    if (uri == NULL) {
         return;
+    }
 
     g_free(uri->scheme);
     uri->scheme = NULL;
@@ -1314,17 +1373,20 @@ static int normalize_uri_path(char *path)
 {
     char *cur, *out;
 
-    if (path == NULL)
+    if (path == NULL) {
         return -1;
+    }
 
     /* Skip all initial "/" chars.  We want to get to the beginning of the
      * first non-empty segment.
      */
     cur = path;
-    while (cur[0] == '/')
+    while (cur[0] == '/') {
         ++cur;
-    if (cur[0] == '\0')
+    }
+    if (cur[0] == '\0') {
         return 0;
+    }
 
     /* Keep everything we've seen so far.  */
     out = cur;
@@ -1340,8 +1402,9 @@ static int normalize_uri_path(char *path)
         if ((cur[0] == '.') && (cur[1] == '/')) {
             cur += 2;
             /* '//' normalization should be done at this point too */
-            while (cur[0] == '/')
+            while (cur[0] == '/') {
                 cur++;
+            }
             continue;
         }
 
@@ -1349,18 +1412,21 @@ static int normalize_uri_path(char *path)
          * d) If the buffer string ends with "." as a complete path segment,
          *    that "." is removed.
          */
-        if ((cur[0] == '.') && (cur[1] == '\0'))
+        if ((cur[0] == '.') && (cur[1] == '\0')) {
             break;
+        }
 
         /* Otherwise keep the segment.  */
         while (cur[0] != '/') {
-            if (cur[0] == '\0')
+            if (cur[0] == '\0') {
                 goto done_cd;
+            }
             (out++)[0] = (cur++)[0];
         }
         /* nomalize // */
-        while ((cur[0] == '/') && (cur[1] == '/'))
+        while ((cur[0] == '/') && (cur[1] == '/')) {
             cur++;
+        }
 
         (out++)[0] = (cur++)[0];
     }
@@ -1369,10 +1435,12 @@ done_cd:
 
     /* Reset to the beginning of the first segment for the next sequence.  */
     cur = path;
-    while (cur[0] == '/')
+    while (cur[0] == '/') {
         ++cur;
-    if (cur[0] == '\0')
+    }
+    if (cur[0] == '\0') {
         return 0;
+    }
 
     /*
      * Analyze each segment in sequence for cases (e) and (f).
@@ -1401,14 +1469,16 @@ done_cd:
 
         /* Find the end of the current segment.  */
         segp = cur;
-        while ((segp[0] != '/') && (segp[0] != '\0'))
+        while ((segp[0] != '/') && (segp[0] != '\0')) {
             ++segp;
+        }
 
         /* If this is the last segment, we're done (we need at least two
          * segments to meet the criteria for the (e) and (f) cases).
          */
-        if (segp[0] == '\0')
+        if (segp[0] == '\0') {
             break;
+        }
 
         /* If the first segment is "..", or if the next segment _isn't_ "..",
          * keep this segment and try the next one.
@@ -1437,15 +1507,18 @@ done_cd:
         /* string will overlap, do not use strcpy */
         tmp = cur;
         segp += 3;
-        while ((*tmp++ = *segp++) != 0)
-            ;
+        while ((*tmp++ = *segp++) != 0) {
+            /* No further work */
+        }
 
         /* If there are no previous segments, then keep going from here.  */
         segp = cur;
-        while ((segp > path) && ((--segp)[0] == '/'))
-            ;
-        if (segp == path)
+        while ((segp > path) && ((--segp)[0] == '/')) {
+            /* No further work */
+        }
+        if (segp == path) {
             continue;
+        }
 
         /* "segp" is pointing to the end of a previous segment; find it's
          * start.  We need to back up to the previous segment and start
@@ -1455,8 +1528,9 @@ done_cd:
          * remove the "foo/..".
          */
         cur = segp;
-        while ((cur > path) && (cur[-1] != '/'))
+        while ((cur > path) && (cur[-1] != '/')) {
             --cur;
+        }
     }
     out[0] = '\0';
 
@@ -1474,13 +1548,15 @@ done_cd:
     if (path[0] == '/') {
         cur = path;
         while ((cur[0] == '/') && (cur[1] == '.') && (cur[2] == '.') &&
-               ((cur[3] == '/') || (cur[3] == '\0')))
+               ((cur[3] == '/') || (cur[3] == '\0'))) {
             cur += 3;
+        }
 
         if (cur != path) {
             out = path;
-            while (cur[0] != '\0')
+            while (cur[0] != '\0') {
                 (out++)[0] = (cur++)[0];
+            }
             out[0] = 0;
         }
     }
@@ -1491,8 +1567,9 @@ done_cd:
 static int is_hex(char c)
 {
     if (((c >= '0') && (c <= '9')) || ((c >= 'a') && (c <= 'f')) ||
-        ((c >= 'A') && (c <= 'F')))
+        ((c >= 'A') && (c <= 'F'))) {
         return 1;
+    }
     return 0;
 }
 
@@ -1515,35 +1592,41 @@ char *uri_string_unescape(const char *str, int len, char *target)
     char *ret, *out;
     const char *in;
 
-    if (str == NULL)
+    if (str == NULL) {
         return NULL;
-    if (len <= 0)
+    }
+    if (len <= 0) {
         len = strlen(str);
-    if (len < 0)
+    }
+    if (len < 0) {
         return NULL;
+    }
 
     if (target == NULL) {
         ret = g_malloc(len + 1);
-    } else
+    } else {
         ret = target;
+    }
     in = str;
     out = ret;
     while (len > 0) {
         if ((len > 2) && (*in == '%') && (is_hex(in[1])) && (is_hex(in[2]))) {
             in++;
-            if ((*in >= '0') && (*in <= '9'))
+            if ((*in >= '0') && (*in <= '9')) {
                 *out = (*in - '0');
-            else if ((*in >= 'a') && (*in <= 'f'))
+            } else if ((*in >= 'a') && (*in <= 'f')) {
                 *out = (*in - 'a') + 10;
-            else if ((*in >= 'A') && (*in <= 'F'))
+            } else if ((*in >= 'A') && (*in <= 'F')) {
                 *out = (*in - 'A') + 10;
+            }
             in++;
-            if ((*in >= '0') && (*in <= '9'))
+            if ((*in >= '0') && (*in <= '9')) {
                 *out = *out * 16 + (*in - '0');
-            else if ((*in >= 'a') && (*in <= 'f'))
+            } else if ((*in >= 'a') && (*in <= 'f')) {
                 *out = *out * 16 + (*in - 'a') + 10;
-            else if ((*in >= 'A') && (*in <= 'F'))
+            } else if ((*in >= 'A') && (*in <= 'F')) {
                 *out = *out * 16 + (*in - 'A') + 10;
+            }
             in++;
             len -= 3;
             out++;
@@ -1573,13 +1656,16 @@ char *uri_string_escape(const char *str, const char *list)
     const char *in;
     int len, out;
 
-    if (str == NULL)
+    if (str == NULL) {
         return NULL;
-    if (str[0] == 0)
+    }
+    if (str[0] == 0) {
         return g_strdup(str);
+    }
     len = strlen(str);
-    if (!(len > 0))
+    if (!(len > 0)) {
         return NULL;
+    }
 
     len += 20;
     ret = g_malloc(len);
@@ -1597,15 +1683,17 @@ char *uri_string_escape(const char *str, const char *list)
             unsigned char val;
             ret[out++] = '%';
             val = ch >> 4;
-            if (val <= 9)
+            if (val <= 9) {
                 ret[out++] = '0' + val;
-            else
+            } else {
                 ret[out++] = 'A' + val - 0xA;
+            }
             val = ch & 0xF;
-            if (val <= 9)
+            if (val <= 9) {
                 ret[out++] = '0' + val;
-            else
+            } else {
                 ret[out++] = 'A' + val - 0xA;
+            }
             in++;
         } else {
             ret[out++] = *in++;
@@ -1652,17 +1740,19 @@ char *uri_resolve(const char *uri, const char *base)
      *    as a reference to "." rather than as a synonym for the current
      *    URI.  Should we do that here?
      */
-    if (uri == NULL)
+    if (uri == NULL) {
         ret = -1;
-    else {
+    } else {
         if (*uri) {
             ref = uri_new();
             ret = uri_parse_into(ref, uri);
-        } else
+        } else {
             ret = 0;
+        }
     }
-    if (ret != 0)
+    if (ret != 0) {
         goto done;
+    }
     if ((ref != NULL) && (ref->scheme != NULL)) {
         /*
          * The URI is absolute don't modify.
@@ -1670,15 +1760,16 @@ char *uri_resolve(const char *uri, const char *base)
         val = g_strdup(uri);
         goto done;
     }
-    if (base == NULL)
+    if (base == NULL) {
         ret = -1;
-    else {
+    } else {
         bas = uri_new();
         ret = uri_parse_into(bas, base);
     }
     if (ret != 0) {
-        if (ref)
+        if (ref) {
             val = uri_to_string(ref);
+        }
         goto done;
     }
     if (ref == NULL) {
@@ -1707,9 +1798,9 @@ char *uri_resolve(const char *uri, const char *base)
     if ((ref->scheme == NULL) && (ref->path == NULL) &&
         ((ref->authority == NULL) && (ref->server == NULL))) {
         res->scheme = g_strdup(bas->scheme);
-        if (bas->authority != NULL)
+        if (bas->authority != NULL) {
             res->authority = g_strdup(bas->authority);
-        else if (bas->server != NULL) {
+        } else if (bas->server != NULL) {
             res->server = g_strdup(bas->server);
             res->user = g_strdup(bas->user);
             res->port = bas->port;
@@ -1747,9 +1838,9 @@ char *uri_resolve(const char *uri, const char *base)
      *    use an authority component.
      */
     if ((ref->authority != NULL) || (ref->server != NULL)) {
-        if (ref->authority != NULL)
+        if (ref->authority != NULL) {
             res->authority = g_strdup(ref->authority);
-        else {
+        } else {
             res->server = g_strdup(ref->server);
             res->user = g_strdup(ref->user);
             res->port = ref->port;
@@ -1757,9 +1848,9 @@ char *uri_resolve(const char *uri, const char *base)
         res->path = g_strdup(ref->path);
         goto step_7;
     }
-    if (bas->authority != NULL)
+    if (bas->authority != NULL) {
         res->authority = g_strdup(bas->authority);
-    else if (bas->server != NULL) {
+    } else if (bas->server != NULL) {
         res->server = g_strdup(bas->server);
         res->user = g_strdup(bas->user);
         res->port = bas->port;
@@ -1783,10 +1874,12 @@ char *uri_resolve(const char *uri, const char *base)
      * Allocate a buffer large enough for the result string.
      */
     len = 2; /* extra / and 0 */
-    if (ref->path != NULL)
+    if (ref->path != NULL) {
         len += strlen(ref->path);
-    if (bas->path != NULL)
+    }
+    if (bas->path != NULL) {
         len += strlen(bas->path);
+    }
     res->path = g_malloc(len);
     res->path[0] = 0;
 
@@ -1799,10 +1892,12 @@ char *uri_resolve(const char *uri, const char *base)
     out = 0;
     if (bas->path != NULL) {
         while (bas->path[cur] != 0) {
-            while ((bas->path[cur] != 0) && (bas->path[cur] != '/'))
+            while ((bas->path[cur] != 0) && (bas->path[cur] != '/')) {
                 cur++;
-            if (bas->path[cur] == 0)
+            }
+            if (bas->path[cur] == 0) {
                 break;
+            }
 
             cur++;
             while (out < cur) {
@@ -1822,8 +1917,9 @@ char *uri_resolve(const char *uri, const char *base)
         /*
          * Ensure the path includes a '/'
          */
-        if ((out == 0) && (bas->server != NULL))
+        if ((out == 0) && (bas->server != NULL)) {
             res->path[out++] = '/';
+        }
         while (ref->path[indx] != 0) {
             res->path[out++] = ref->path[indx++];
         }
@@ -1845,12 +1941,15 @@ step_7:
     val = uri_to_string(res);
 
 done:
-    if (ref != NULL)
+    if (ref != NULL) {
         uri_free(ref);
-    if (bas != NULL)
+    }
+    if (bas != NULL) {
         uri_free(bas);
-    if (res != NULL)
+    }
+    if (res != NULL) {
         uri_free(res);
+    }
     return val;
 }
 
@@ -1899,8 +1998,9 @@ char *uri_resolve_relative(const char *uri, const char *base)
     char *bptr, *uptr, *vptr;
     int remove_path = 0;
 
-    if ((uri == NULL) || (*uri == 0))
+    if ((uri == NULL) || (*uri == 0)) {
         return NULL;
+    }
 
     /*
      * First parse URI into a standard form
@@ -1909,10 +2009,12 @@ char *uri_resolve_relative(const char *uri, const char *base)
     /* If URI not already in "relative" form */
     if (uri[0] != '.') {
         ret = uri_parse_into(ref, uri);
-        if (ret != 0)
+        if (ret != 0) {
             goto done; /* Error in URI, return NULL */
-    } else
+        }
+    } else {
         ref->path = g_strdup(uri);
+    }
 
     /*
      * Next parse base into the same standard form
@@ -1924,10 +2026,12 @@ char *uri_resolve_relative(const char *uri, const char *base)
     bas = uri_new();
     if (base[0] != '.') {
         ret = uri_parse_into(bas, base);
-        if (ret != 0)
+        if (ret != 0) {
             goto done; /* Error in base, return NULL */
-    } else
+        }
+    } else {
         bas->path = g_strdup(base);
+    }
 
     /*
      * If the scheme / server on the URI differs from the base,
@@ -1962,8 +2066,9 @@ char *uri_resolve_relative(const char *uri, const char *base)
     if (bas->path == NULL) {
         if (ref->path != NULL) {
             uptr = ref->path;
-            if (*uptr == '/')
+            if (*uptr == '/') {
                 uptr++;
+            }
             /* exception characters from uri_to_string */
             val = uri_string_escape(uptr, "/;&=+$,");
         }
@@ -1972,8 +2077,9 @@ char *uri_resolve_relative(const char *uri, const char *base)
     bptr = bas->path;
     if (ref->path == NULL) {
         for (ix = 0; bptr[ix] != 0; ix++) {
-            if (bptr[ix] == '/')
+            if (bptr[ix] == '/') {
                 nbslash++;
+            }
         }
         uptr = NULL;
         len = 1; /* this is for a string terminator only */
@@ -1981,14 +2087,17 @@ char *uri_resolve_relative(const char *uri, const char *base)
         /*
          * Next we compare the two strings and find where they first differ
          */
-        if ((ref->path[pos] == '.') && (ref->path[pos + 1] == '/'))
+        if ((ref->path[pos] == '.') && (ref->path[pos + 1] == '/')) {
             pos += 2;
-        if ((*bptr == '.') && (bptr[1] == '/'))
+        }
+        if ((*bptr == '.') && (bptr[1] == '/')) {
             bptr += 2;
-        else if ((*bptr == '/') && (ref->path[pos] != '/'))
+        } else if ((*bptr == '/') && (ref->path[pos] != '/')) {
             bptr++;
-        while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0))
+        }
+        while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0)) {
             pos++;
+        }
 
         if (bptr[pos] == ref->path[pos]) {
             val = g_strdup("");
@@ -2000,13 +2109,16 @@ char *uri_resolve_relative(const char *uri, const char *base)
          * beginning of the "unique" suffix of URI
          */
         ix = pos;
-        if ((ref->path[ix] == '/') && (ix > 0))
+        if ((ref->path[ix] == '/') && (ix > 0)) {
             ix--;
-        else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
+        } else if ((ref->path[ix] == 0) && (ix > 1)
+                && (ref->path[ix - 1] == '/')) {
             ix -= 2;
+        }
         for (; ix > 0; ix--) {
-            if (ref->path[ix] == '/')
+            if (ref->path[ix] == '/') {
                 break;
+            }
         }
         if (ix == 0) {
             uptr = ref->path;
@@ -2020,17 +2132,19 @@ char *uri_resolve_relative(const char *uri, const char *base)
          */
         if (bptr[pos] != ref->path[pos]) { /* check for trivial URI == base */
             for (; bptr[ix] != 0; ix++) {
-                if (bptr[ix] == '/')
+                if (bptr[ix] == '/') {
                     nbslash++;
+                }
             }
         }
         len = strlen(uptr) + 1;
     }
 
     if (nbslash == 0) {
-        if (uptr != NULL)
+        if (uptr != NULL) {
             /* exception characters from uri_to_string */
             val = uri_string_escape(uptr, "/;&=+$,");
+        }
         goto done;
     }
 
@@ -2075,12 +2189,15 @@ done:
     /*
      * Free the working variables
      */
-    if (remove_path != 0)
+    if (remove_path != 0) {
         ref->path = NULL;
-    if (ref != NULL)
+    }
+    if (ref != NULL) {
         uri_free(ref);
-    if (bas != NULL)
+    }
+    if (bas != NULL) {
         uri_free(bas);
+    }
 
     return val;
 }
@@ -2093,8 +2210,9 @@ struct QueryParams *query_params_new(int init_alloc)
 {
     struct QueryParams *ps;
 
-    if (init_alloc <= 0)
+    if (init_alloc <= 0) {
         init_alloc = 1;
+    }
 
     ps = g_new(QueryParams, 1);
     ps->n = 0;
@@ -2141,27 +2259,32 @@ struct QueryParams *query_params_parse(const char *query)
     const char *end, *eq;
 
     ps = query_params_new(0);
-    if (!query || query[0] == '\0')
+    if (!query || query[0] == '\0') {
         return ps;
+    }
 
     while (*query) {
         char *name = NULL, *value = NULL;
 
         /* Find the next separator, or end of the string. */
         end = strchr(query, '&');
-        if (!end)
+        if (!end) {
             end = strchr(query, ';');
-        if (!end)
+        }
+        if (!end) {
             end = query + strlen(query);
+        }
 
         /* Find the first '=' character between here and end. */
         eq = strchr(query, '=');
-        if (eq && eq >= end)
+        if (eq && eq >= end) {
             eq = NULL;
+        }
 
         /* Empty section (eg. "&&"). */
-        if (end == query)
+        if (end == query) {
             goto next;
+        }
 
         /* If there is no '=' character, then we have just "name"
          * and consistent with CGI.pm we assume value is "".
@@ -2180,8 +2303,9 @@ struct QueryParams *query_params_parse(const char *query)
         /* If the '=' character is at the beginning then we have
          * "=value" and consistent with CGI.pm we _ignore_ this.
          */
-        else if (query == eq)
+        else if (query == eq) {
             goto next;
+        }
 
         /* Otherwise it's "name=value". */
         else {
@@ -2196,8 +2320,9 @@ struct QueryParams *query_params_parse(const char *query)
 
     next:
         query = end;
-        if (*query)
+        if (*query) {
             query++; /* skip '&' separator */
+        }
     }
 
     return ps;
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 4/6] tests/libqos: Check for valid dev pointer when looking for PCI devices
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
                   ` (2 preceding siblings ...)
  2018-03-05  9:40 ` [Qemu-devel] [PULL 3/6] util/uri.c: wrap single statement blocks with braces {} Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 5/6] Add a git-publish configuration file Stefan Hajnoczi
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Thomas Huth, Stefan Hajnoczi

From: Thomas Huth <thuth@redhat.com>

dev could be NULL if the PCI device can not be found due to some
reasons, so we must not dereference the pointer in this case.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-id: 1519713884-2346-1-git-send-email-thuth@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 tests/libqos/virtio-pci.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tests/libqos/virtio-pci.c b/tests/libqos/virtio-pci.c
index 7ac15c04e1..550dede0a2 100644
--- a/tests/libqos/virtio-pci.c
+++ b/tests/libqos/virtio-pci.c
@@ -315,7 +315,9 @@ QVirtioPCIDevice *qvirtio_pci_device_find(QPCIBus *bus, uint16_t device_type)
     qvirtio_pci_foreach(bus, device_type, false, 0,
                         qvirtio_pci_assign_device, &dev);
 
-    dev->vdev.bus = &qvirtio_pci;
+    if (dev) {
+        dev->vdev.bus = &qvirtio_pci;
+    }
 
     return dev;
 }
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 5/6] Add a git-publish configuration file
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
                   ` (3 preceding siblings ...)
  2018-03-05  9:40 ` [Qemu-devel] [PULL 4/6] tests/libqos: Check for valid dev pointer when looking for PCI devices Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05  9:40 ` [Qemu-devel] [PULL 6/6] README: Document 'git-publish' workflow Stefan Hajnoczi
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Fam Zheng, Stefan Hajnoczi

From: Fam Zheng <famz@redhat.com>

git-publish [1] is a convenient tool to send patches and has been
popular among QEMU developers.  Recently it has been made available in
Fedora/Debian official repo.

One nice feature of the tool is a per-project configuration with
profiles, especially in which the cccmd option is a handy method to
create the Cc list.

[1]: https://github.com/stefanha/git-publish

Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 20180226030326.20219-2-famz@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 .gitpublish | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)
 create mode 100644 .gitpublish

diff --git a/.gitpublish b/.gitpublish
new file mode 100644
index 0000000000..a13f8c7c0e
--- /dev/null
+++ b/.gitpublish
@@ -0,0 +1,51 @@
+#
+# Common git-publish profiles that can be used to send patches to QEMU upstream.
+#
+# See https://github.com/stefanha/git-publish for more information
+#
+[gitpublishprofile "default"]
+base = master
+to = qemu-devel@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "rfc"]
+base = master
+prefix = RFC PATCH
+to = qemu-devel@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "stable"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-stable@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "trivial"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-trivial@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "block"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-block@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "arm"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-arm@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "s390"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-s390@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
+
+[gitpublishprofile "ppc"]
+base = master
+to = qemu-devel@nongnu.org
+cc = qemu-ppc@nongnu.org
+cccmd = scripts/get_maintainer.pl --noroles --norolestats --nogit --nogit-fallback 2>/dev/null
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PULL 6/6] README: Document 'git-publish' workflow
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
                   ` (4 preceding siblings ...)
  2018-03-05  9:40 ` [Qemu-devel] [PULL 5/6] Add a git-publish configuration file Stefan Hajnoczi
@ 2018-03-05  9:40 ` Stefan Hajnoczi
  2018-03-05 10:51   ` [Qemu-devel] [Qemu-block] " Alberto Garcia
  2018-03-05  9:52 ` [Qemu-devel] [PULL 0/6] Block patches no-reply
  2018-03-05 18:55 ` Peter Maydell
  7 siblings, 1 reply; 11+ messages in thread
From: Stefan Hajnoczi @ 2018-03-05  9:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-block, Peter Maydell, Fam Zheng, Stefan Hajnoczi

From: Fam Zheng <famz@redhat.com>

Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 20180226030326.20219-3-famz@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 README | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/README b/README
index 2c8e1c8cc4..7833b97365 100644
--- a/README
+++ b/README
@@ -56,7 +56,7 @@ The QEMU source code is maintained under the GIT version control system.
 
    git clone git://git.qemu.org/qemu.git
 
-When submitting patches, the preferred approach is to use 'git
+When submitting patches, one common approach is to use 'git
 format-patch' and/or 'git send-email' to format & send the mail to the
 qemu-devel@nongnu.org mailing list. All patches submitted must contain
 a 'Signed-off-by' line from the author. Patches should follow the
@@ -73,6 +73,35 @@ The QEMU website is also maintained under source control.
   git clone git://git.qemu.org/qemu-web.git
   https://www.qemu.org/2017/02/04/the-new-qemu-website-is-up/
 
+A 'git-profile' utility was created to make above process less
+cumbersome, and is highly recommended for making regular contributions,
+or even just for sending consecutive patch series revisions. It also
+requires a working 'git send-email' setup, and by default doesn't
+automate everything, so you may want to go through the above steps
+manually for once.
+
+For installation instructions, please go to
+
+  https://github.com/stefanha/git-publish
+
+The workflow with 'git-publish' is:
+
+  $ git checkout master -b my-feature
+  $ # work on new commits, add your 'Signed-off-by' lines to each
+  $ git publish
+
+Your patch series will be sent and tagged as my-feature-v1 if you need to refer
+back to it in the future.
+
+Sending v2:
+
+  $ git checkout my-feature # same topic branch
+  $ # making changes to the commits (using 'git rebase', for example)
+  $ git publish
+
+Your patch series will be sent with 'v2' tag in the subject and the git tip
+will be tagged as my-feature-v2.
+
 Bug reporting
 =============
 
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PULL 0/6] Block patches
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
                   ` (5 preceding siblings ...)
  2018-03-05  9:40 ` [Qemu-devel] [PULL 6/6] README: Document 'git-publish' workflow Stefan Hajnoczi
@ 2018-03-05  9:52 ` no-reply
  2018-03-05 18:55 ` Peter Maydell
  7 siblings, 0 replies; 11+ messages in thread
From: no-reply @ 2018-03-05  9:52 UTC (permalink / raw)
  To: stefanha; +Cc: famz, qemu-devel, peter.maydell, qemu-block

Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20180305094006.21446-1-stefanha@redhat.com
Subject: [Qemu-devel] [PULL 0/6] Block patches

=== TEST SCRIPT BEGIN ===
#!/bin/bash

BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0

git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram

commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
    echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
    if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
        failed=1
        echo
    fi
    n=$((n+1))
done

exit $failed
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
   136c67e078..4f51e1d386  master     -> master
 * [new tag]               patchew/1520243276-30197-1-git-send-email-thuth@redhat.com -> patchew/1520243276-30197-1-git-send-email-thuth@redhat.com
 * [new tag]               patchew/20180305094006.21446-1-stefanha@redhat.com -> patchew/20180305094006.21446-1-stefanha@redhat.com
Switched to a new branch 'test'
20eeab9795 README: Document 'git-publish' workflow
333283c56b Add a git-publish configuration file
3a9752c776 tests/libqos: Check for valid dev pointer when looking for PCI devices
6863406cb9 util/uri.c: wrap single statement blocks with braces {}
906ebc14e5 util/uri.c: remove brackets that wrap `return` statement's content.
d0e12d0916 util/uri.c: Coding style check, Only whitespace involved

=== OUTPUT BEGIN ===
Checking PATCH 1/6: util/uri.c: Coding style check, Only whitespace involved...
ERROR: return is not a function, parentheses are not required
#171: FILE: util/uri.c:215:
+        return (-1);

ERROR: return is not a function, parentheses are not required
#176: FILE: util/uri.c:219:
+        return (2);

ERROR: return is not a function, parentheses are not required
#190: FILE: util/uri.c:229:
+    return (0);

ERROR: braces {} are necessary for all arms of this statement
#212: FILE: util/uri.c:262:
+        if (uri->cleanup & 2)
[...]
+        else
[...]

ERROR: braces {} are necessary for all arms of this statement
#276: FILE: util/uri.c:359:
+            if (uri->cleanup & 2)
[...]
+            else
[...]

ERROR: return is not a function, parentheses are not required
#282: FILE: util/uri.c:365:
+        return (0);

ERROR: return is not a function, parentheses are not required
#285: FILE: util/uri.c:367:
+    return (1);

ERROR: return is not a function, parentheses are not required
#305: FILE: util/uri.c:389:
+        return (1);

ERROR: braces {} are necessary for all arms of this statement
#306: FILE: util/uri.c:390:
+    if (!ISA_DIGIT(cur + 1))
[...]
+    else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2)))
[...]
     else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2)))
[...]
-    else if ((*cur == '2') && (*(cur + 1) >= '0') &&
[...]
-    else if ((*cur == '2') && (*(cur + 1) == '5') &&
[...]
+        cur += 3;
[...]

ERROR: braces {} are necessary for all arms of this statement
#308: FILE: util/uri.c:392:
+    else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2)))
[...]
     else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2)))
[...]
-    else if ((*cur == '2') && (*(cur + 1) >= '0') &&
[...]
-    else if ((*cur == '2') && (*(cur + 1) == '5') &&
[...]
+        cur += 3;
[...]

ERROR: braces {} are necessary for all arms of this statement
#319: FILE: util/uri.c:396:
+    else if ((*cur == '2') && (*(cur + 1) >= '0') && (*(cur + 1) <= '4') &&
[...]
+    else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') &&
[...]
     else
[...]

ERROR: braces {} are necessary for all arms of this statement
#322: FILE: util/uri.c:399:
+    else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') &&
[...]
     else
[...]

ERROR: return is not a function, parentheses are not required
#327: FILE: util/uri.c:403:
+        return (1);

ERROR: return is not a function, parentheses are not required
#330: FILE: util/uri.c:405:
+    return (0);

ERROR: braces {} are necessary even for single statement blocks
#354: FILE: util/uri.c:433:
+        while ((*cur != ']') && (*cur != 0))
+            cur++;

ERROR: braces {} are necessary for all arms of this statement
#356: FILE: util/uri.c:435:
+        if (*cur != ']')
[...]

ERROR: return is not a function, parentheses are not required
#357: FILE: util/uri.c:436:
+            return (1);

ERROR: braces {} are necessary for all arms of this statement
#371: FILE: util/uri.c:446:
+        if (*cur != '.')
[...]

ERROR: braces {} are necessary for all arms of this statement
#379: FILE: util/uri.c:451:
+        if (*cur != '.')
[...]

ERROR: braces {} are necessary for all arms of this statement
#386: FILE: util/uri.c:455:
+        if (*cur != '.')
[...]

ERROR: braces {} are necessary for all arms of this statement
#412: FILE: util/uri.c:473:
+        if (cur != host) {
[...]
+        } else
[...]

ERROR: braces {} are necessary for all arms of this statement
#413: FILE: util/uri.c:474:
+            if (uri->cleanup & 2)
[...]
+            else
[...]

ERROR: return is not a function, parentheses are not required
#422: FILE: util/uri.c:482:
+    return (0);

ERROR: braces {} are necessary for all arms of this statement
#441: FILE: util/uri.c:512:
+    if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#442: FILE: util/uri.c:513:
+        return (ret);

ERROR: braces {} are necessary for all arms of this statement
#447: FILE: util/uri.c:517:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#448: FILE: util/uri.c:518:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#452: FILE: util/uri.c:521:
+    return (0);

ERROR: return is not a function, parentheses are not required
#471: FILE: util/uri.c:547:
+            return (0);

ERROR: return is not a function, parentheses are not required
#472: FILE: util/uri.c:548:
+        return (1);

ERROR: return is not a function, parentheses are not required
#494: FILE: util/uri.c:579:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#513: FILE: util/uri.c:616:
+        return (1);

ERROR: return is not a function, parentheses are not required
#526: FILE: util/uri.c:624:
+                return (ret);

ERROR: braces {} are necessary for all arms of this statement
#546: FILE: util/uri.c:662:
+    if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#547: FILE: util/uri.c:663:
+        return (ret);

ERROR: return is not a function, parentheses are not required
#554: FILE: util/uri.c:668:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#573: FILE: util/uri.c:705:
+    if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#574: FILE: util/uri.c:706:
+        return (ret);

ERROR: return is not a function, parentheses are not required
#581: FILE: util/uri.c:711:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#606: FILE: util/uri.c:753:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#607: FILE: util/uri.c:754:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#609: FILE: util/uri.c:756:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#610: FILE: util/uri.c:757:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#612: FILE: util/uri.c:759:
+        return (0);

ERROR: braces {} are necessary for all arms of this statement
#616: FILE: util/uri.c:762:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#617: FILE: util/uri.c:763:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#621: FILE: util/uri.c:766:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#622: FILE: util/uri.c:767:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#653: FILE: util/uri.c:802:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#654: FILE: util/uri.c:803:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#656: FILE: util/uri.c:805:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#657: FILE: util/uri.c:806:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#662: FILE: util/uri.c:809:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#663: FILE: util/uri.c:810:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#667: FILE: util/uri.c:813:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#668: FILE: util/uri.c:814:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#687: FILE: util/uri.c:826:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#688: FILE: util/uri.c:827:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#696: FILE: util/uri.c:832:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#697: FILE: util/uri.c:833:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#703: FILE: util/uri.c:837:
+        return (1);

ERROR: return is not a function, parentheses are not required
#706: FILE: util/uri.c:839:
+    return (0);

ERROR: braces {} are necessary for all arms of this statement
#725: FILE: util/uri.c:859:
+    if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#726: FILE: util/uri.c:860:
+        return (ret);

ERROR: return is not a function, parentheses are not required
#729: FILE: util/uri.c:862:
+        return (1);

ERROR: braces {} are necessary for all arms of this statement
#734: FILE: util/uri.c:866:
+    if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#735: FILE: util/uri.c:867:
+        return (ret);

ERROR: braces {} are necessary for all arms of this statement
#742: FILE: util/uri.c:871:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#743: FILE: util/uri.c:872:
+            return (ret);

ERROR: braces {} are necessary for all arms of this statement
#751: FILE: util/uri.c:877:
+        if (ret != 0)
[...]

ERROR: return is not a function, parentheses are not required
#752: FILE: util/uri.c:878:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#758: FILE: util/uri.c:882:
+        return (1);

ERROR: return is not a function, parentheses are not required
#761: FILE: util/uri.c:884:
+    return (0);

ERROR: return is not a function, parentheses are not required
#777: FILE: util/uri.c:904:
+        return (-1);

ERROR: return is not a function, parentheses are not required
#794: FILE: util/uri.c:917:
+            return (ret);

ERROR: return is not a function, parentheses are not required
#798: FILE: util/uri.c:920:
+    return (0);

ERROR: return is not a function, parentheses are not required
#815: FILE: util/uri.c:939:
+        return (NULL);

ERROR: return is not a function, parentheses are not required
#821: FILE: util/uri.c:944:
+        return (NULL);

ERROR: return is not a function, parentheses are not required
#824: FILE: util/uri.c:946:
+    return (uri);

ERROR: return is not a function, parentheses are not required
#837: FILE: util/uri.c:963:
+    return (rfc3986_parse_uri_reference(uri, str));

ERROR: return is not a function, parentheses are not required
#854: FILE: util/uri.c:983:
+        return (NULL);

ERROR: return is not a function, parentheses are not required
#863: FILE: util/uri.c:991:
+        return (NULL);

ERROR: return is not a function, parentheses are not required
#866: FILE: util/uri.c:993:
+    return (uri);

ERROR: return is not a function, parentheses are not required
#891: FILE: util/uri.c:1014:
+    return (ret);

ERROR: return is not a function, parentheses are not required
#910: FILE: util/uri.c:1031:
+    return (temp);

ERROR: braces {} are necessary for all arms of this statement
#930: FILE: util/uri.c:1050:
+    if (uri == NULL)
[...]

ERROR: return is not a function, parentheses are not required
#931: FILE: util/uri.c:1051:
+        return (NULL);

ERROR: braces {} are necessary for all arms of this statement
#983: FILE: util/uri.c:1079:
+            if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p)))
[...]
+            else {
[...]

ERROR: braces {} are necessary for all arms of this statement
#1033: FILE: util/uri.c:1104:
+                    if ((IS_UNRESERVED(*(p))) || ((*(p) == ';')) ||
[...]
+                    else {
[...]

ERROR: braces {} are necessary for all arms of this statement
#1117: FILE: util/uri.c:1150:
+                if ((IS_UNRESERVED(*(p))) || ((*(p) == '$')) ||
[...]
+                else {
[...]

ERROR: braces {} are necessary for all arms of this statement
#1187: FILE: util/uri.c:1194:
+                if ((IS_UNRESERVED(*(p))) || ((*(p) == '/')) ||
[...]
-		else {
[...]

ERROR: braces {} are necessary for all arms of this statement
#1269: FILE: util/uri.c:1236:
+            if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p))))
[...]
+            else {
[...]

ERROR: return is not a function, parentheses are not required
#1286: FILE: util/uri.c:1252:
+    return (ret);

ERROR: braces {} are necessary for all arms of this statement
#1299: FILE: util/uri.c:1263:
+    if (uri == NULL)
[...]

ERROR: return is not a function, parentheses are not required
#1338: FILE: util/uri.c:1318:
+        return (-1);

ERROR: return is not a function, parentheses are not required
#1349: FILE: util/uri.c:1327:
+        return (0);

ERROR: braces {} are necessary even for single statement blocks
#1375: FILE: util/uri.c:1343:
+            while (cur[0] == '/')
+                cur++;

ERROR: braces {} are necessary for all arms of this statement
#1390: FILE: util/uri.c:1352:
+        if ((cur[0] == '.') && (cur[1] == '\0'))
[...]

ERROR: braces {} are necessary even for single statement blocks
#1408: FILE: util/uri.c:1362:
+        while ((cur[0] == '/') && (cur[1] == '/'))
+            cur++;

ERROR: return is not a function, parentheses are not required
#1424: FILE: util/uri.c:1375:
+        return (0);

ERROR: braces {} are necessary even for single statement blocks
#1517: FILE: util/uri.c:1482:
+            while (cur[0] != '\0')
+                (out++)[0] = (cur++)[0];

ERROR: return is not a function, parentheses are not required
#1524: FILE: util/uri.c:1488:
+    return (0);

ERROR: braces {} are necessary for all arms of this statement
#1532: FILE: util/uri.c:1493:
+    if (((c >= '0') && (c <= '9')) || ((c >= 'a') && (c <= 'f')) ||
[...]

ERROR: return is not a function, parentheses are not required
#1536: FILE: util/uri.c:1495:
+        return (1);

ERROR: return is not a function, parentheses are not required
#1537: FILE: util/uri.c:1496:
+    return (0);

ERROR: return is not a function, parentheses are not required
#1559: FILE: util/uri.c:1519:
+        return (NULL);

ERROR: braces {} are necessary for all arms of this statement
#1560: FILE: util/uri.c:1520:
+    if (len <= 0)
[...]

ERROR: braces {} are necessary for all arms of this statement
#1562: FILE: util/uri.c:1522:
+    if (len < 0)
[...]

ERROR: return is not a function, parentheses are not required
#1563: FILE: util/uri.c:1523:
+        return (NULL);

ERROR: braces {} are necessary for all arms of this statement
#1599: FILE: util/uri.c:1534:
+            if ((*in >= '0') && (*in <= '9'))
[...]
+            else if ((*in >= 'a') && (*in <= 'f'))
[...]
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#1601: FILE: util/uri.c:1536:
+            else if ((*in >= 'a') && (*in <= 'f'))
[...]
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#1603: FILE: util/uri.c:1538:
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#1606: FILE: util/uri.c:1541:
+            if ((*in >= '0') && (*in <= '9'))
[...]
+            else if ((*in >= 'a') && (*in <= 'f'))
[...]
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#1608: FILE: util/uri.c:1543:
+            else if ((*in >= 'a') && (*in <= 'f'))
[...]
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#1610: FILE: util/uri.c:1545:
+            else if ((*in >= 'A') && (*in <= 'F'))
[...]

ERROR: return is not a function, parentheses are not required
#1622: FILE: util/uri.c:1556:
+    return (ret);

ERROR: return is not a function, parentheses are not required
#1641: FILE: util/uri.c:1577:
+        return (NULL);

ERROR: return is not a function, parentheses are not required
#1644: FILE: util/uri.c:1579:
+        return (g_strdup(str));

ERROR: braces {} are necessary for all arms of this statement
#1647: FILE: util/uri.c:1581:
+    if (!(len > 0))
[...]

ERROR: return is not a function, parentheses are not required
#1648: FILE: util/uri.c:1582:
+        return (NULL);

ERROR: braces {} are necessary for all arms of this statement
#1689: FILE: util/uri.c:1600:
+            if (val <= 9)
[...]
+            else
[...]

ERROR: braces {} are necessary for all arms of this statement
#1694: FILE: util/uri.c:1605:
+            if (val <= 9)
[...]
+            else
[...]

ERROR: return is not a function, parentheses are not required
#1705: FILE: util/uri.c:1615:
+    return (ret);

ERROR: braces {} are necessary for all arms of this statement
#1742: FILE: util/uri.c:1658:
+        if (*uri) {
[...]
+        } else
[...]

ERROR: braces {} are necessary for all arms of this statement
#1776: FILE: util/uri.c:1680:
+        if (ref)
[...]

ERROR: braces {} are necessary for all arms of this statement
#1806: FILE: util/uri.c:1710:
+        if (bas->authority != NULL)
[...]
+        else if (bas->server != NULL) {
[...]

ERROR: braces {} are necessary for all arms of this statement
#1846: FILE: util/uri.c:1750:
+        if (ref->authority != NULL)
[...]
+        else {
[...]

ERROR: braces {} are necessary even for single statement blocks
#1905: FILE: util/uri.c:1802:
+            while ((bas->path[cur] != 0) && (bas->path[cur] != '/'))
+                cur++;

ERROR: braces {} are necessary for all arms of this statement
#1907: FILE: util/uri.c:1804:
+            if (bas->path[cur] == 0)
[...]

ERROR: braces {} are necessary for all arms of this statement
#1942: FILE: util/uri.c:1825:
+        if ((out == 0) && (bas->server != NULL))
[...]

ERROR: return is not a function, parentheses are not required
#1963: FILE: util/uri.c:1854:
+    return (val);

ERROR: braces {} are necessary for all arms of this statement
#1995: FILE: util/uri.c:1912:
+        if (ret != 0)
[...]

ERROR: braces {} are necessary for all arms of this statement
#2017: FILE: util/uri.c:1927:
+        if (ret != 0)
[...]

ERROR: braces {} are necessary for all arms of this statement
#2073: FILE: util/uri.c:1965:
+            if (*uptr == '/')
[...]

ERROR: braces {} are necessary for all arms of this statement
#2089: FILE: util/uri.c:1975:
+            if (bptr[ix] == '/')
[...]

ERROR: braces {} are necessary for all arms of this statement
#2102: FILE: util/uri.c:1984:
+        if ((ref->path[pos] == '.') && (ref->path[pos + 1] == '/'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#2105: FILE: util/uri.c:1986:
+        if ((*bptr == '.') && (bptr[1] == '/'))
[...]
-	else if ((*bptr == '/') && (ref->path[pos] != '/'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#2111: FILE: util/uri.c:1988:
+        else if ((*bptr == '/') && (ref->path[pos] != '/'))
[...]

ERROR: braces {} are necessary even for single statement blocks
#2113: FILE: util/uri.c:1990:
+        while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0))
+            pos++;

ERROR: braces {} are necessary for all arms of this statement
#2149: FILE: util/uri.c:2003:
+        if ((ref->path[ix] == '/') && (ix > 0))
[...]
+        else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#2151: FILE: util/uri.c:2005:
+        else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/'))
[...]

ERROR: braces {} are necessary for all arms of this statement
#2154: FILE: util/uri.c:2008:
+            if (ref->path[ix] == '/')
[...]

ERROR: braces {} are necessary for all arms of this statement
#2179: FILE: util/uri.c:2023:
+                if (bptr[ix] == '/')
[...]

ERROR: braces {} are necessary for all arms of this statement
#2191: FILE: util/uri.c:2031:
+        if (uptr != NULL)
[...]

ERROR: braces {} are necessary for all arms of this statement
#2272: FILE: util/uri.c:2096:
+    if (init_alloc <= 0)
[...]

ERROR: braces {} are necessary for all arms of this statement
#2341: FILE: util/uri.c:2159:
+        if (eq && eq >= end)
[...]

ERROR: braces {} are necessary for all arms of this statement
#2383: FILE: util/uri.c:2199:
+        if (*query)
[...]

total: 147 errors, 0 warnings, 2299 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Checking PATCH 2/6: util/uri.c: remove brackets that wrap `return` statement's content....
Checking PATCH 3/6: util/uri.c: wrap single statement blocks with braces {}...
Checking PATCH 4/6: tests/libqos: Check for valid dev pointer when looking for PCI devices...
Checking PATCH 5/6: Add a git-publish configuration file...
Checking PATCH 6/6: README: Document 'git-publish' workflow...
=== OUTPUT END ===

Test command exited with code: 1


---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@freelists.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [Qemu-block] [PULL 6/6] README: Document 'git-publish' workflow
  2018-03-05  9:40 ` [Qemu-devel] [PULL 6/6] README: Document 'git-publish' workflow Stefan Hajnoczi
@ 2018-03-05 10:51   ` Alberto Garcia
  2018-03-05 12:23     ` Fam Zheng
  0 siblings, 1 reply; 11+ messages in thread
From: Alberto Garcia @ 2018-03-05 10:51 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Peter Maydell, Fam Zheng, qemu-block

On Mon 05 Mar 2018 10:40:06 AM CET, Stefan Hajnoczi wrote:
> +A 'git-profile' utility was created to make above process less
> +cumbersome, and is highly recommended for making regular
> contributions,

A 'git-profile' utility ? Did you want to say 'git-publish' there?

Berto

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [Qemu-block] [PULL 6/6] README: Document 'git-publish' workflow
  2018-03-05 10:51   ` [Qemu-devel] [Qemu-block] " Alberto Garcia
@ 2018-03-05 12:23     ` Fam Zheng
  0 siblings, 0 replies; 11+ messages in thread
From: Fam Zheng @ 2018-03-05 12:23 UTC (permalink / raw)
  To: Alberto Garcia; +Cc: Stefan Hajnoczi, qemu-devel, Peter Maydell, qemu-block

On Mon, 03/05 11:51, Alberto Garcia wrote:
> On Mon 05 Mar 2018 10:40:06 AM CET, Stefan Hajnoczi wrote:
> > +A 'git-profile' utility was created to make above process less
> > +cumbersome, and is highly recommended for making regular
> > contributions,
> 
> A 'git-profile' utility ? Did you want to say 'git-publish' there?

Oops. Apparently, yes.

Fam

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PULL 0/6] Block patches
  2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
                   ` (6 preceding siblings ...)
  2018-03-05  9:52 ` [Qemu-devel] [PULL 0/6] Block patches no-reply
@ 2018-03-05 18:55 ` Peter Maydell
  7 siblings, 0 replies; 11+ messages in thread
From: Peter Maydell @ 2018-03-05 18:55 UTC (permalink / raw)
  To: Stefan Hajnoczi; +Cc: QEMU Developers, Qemu-block

On 5 March 2018 at 09:40, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> The following changes since commit 136c67e07869227b21b3f627316e03679ce7b738:
>
>   Merge remote-tracking branch 'remotes/bkoppelmann/tags/pull-tricore-2018-03-02' into staging (2018-03-02 16:56:20 +0000)
>
> are available in the Git repository at:
>
>   git://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 23500c6a9409efc80d696aede0629bfbe7556a90:
>
>   README: Document 'git-publish' workflow (2018-03-05 09:03:17 +0000)
>
> ----------------------------------------------------------------
> Pull request
>
> Mostly patches that are only indirectly related to the block layer, but I've
> reviewed them and there is no maintainer.
>
> ----------------------------------------------------------------
>
> Fam Zheng (2):
>   Add a git-publish configuration file
>   README: Document 'git-publish' workflow
>
> Su Hang (3):
>   util/uri.c: Coding style check, Only whitespace involved
>   util/uri.c: remove brackets that wrap `return` statement's content.
>   util/uri.c: wrap single statement blocks with braces {}
>
> Thomas Huth (1):
>   tests/libqos: Check for valid dev pointer when looking for PCI devices
>
>  tests/libqos/virtio-pci.c |    4 +-
>  util/uri.c                | 1733 ++++++++++++++++++++++++---------------------
>  .gitpublish               |   51 ++
>  README                    |   31 +-
>  4 files changed, 1014 insertions(+), 805 deletions(-)
>  create mode 100644 .gitpublish

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2018-03-05 18:55 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-05  9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 1/6] util/uri.c: Coding style check, Only whitespace involved Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 2/6] util/uri.c: remove brackets that wrap `return` statement's content Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 3/6] util/uri.c: wrap single statement blocks with braces {} Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 4/6] tests/libqos: Check for valid dev pointer when looking for PCI devices Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 5/6] Add a git-publish configuration file Stefan Hajnoczi
2018-03-05  9:40 ` [Qemu-devel] [PULL 6/6] README: Document 'git-publish' workflow Stefan Hajnoczi
2018-03-05 10:51   ` [Qemu-devel] [Qemu-block] " Alberto Garcia
2018-03-05 12:23     ` Fam Zheng
2018-03-05  9:52 ` [Qemu-devel] [PULL 0/6] Block patches no-reply
2018-03-05 18:55 ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).