|
|
9ae3a8 |
From 9a2e25a1a72443b00a54fb1660c818856c2569c6 Mon Sep 17 00:00:00 2001
|
|
|
9ae3a8 |
From: Markus Armbruster <armbru@redhat.com>
|
|
|
9ae3a8 |
Date: Tue, 8 Sep 2015 18:06:22 +0200
|
|
|
9ae3a8 |
Subject: [PATCH 4/7] util/uri: uri_new() can't fail, drop dead error handling
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
Message-id: <1441735585-23432-5-git-send-email-armbru@redhat.com>
|
|
|
9ae3a8 |
Patchwork-id: 67703
|
|
|
9ae3a8 |
O-Subject: [RHEL-7.2 qemu-kvm PATCH 4/7] util/uri: uri_new() can't fail, drop dead error handling
|
|
|
9ae3a8 |
Bugzilla: 1218919
|
|
|
9ae3a8 |
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
|
|
|
9ae3a8 |
RH-Acked-by: Fam Zheng <famz@redhat.com>
|
|
|
9ae3a8 |
RH-Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
Signed-off-by: Markus Armbruster <armbru@redhat.com>
|
|
|
9ae3a8 |
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
|
|
|
9ae3a8 |
(cherry picked from commit c89c6e80a66aac16d7b14ff21e0aaeb99ebfe165)
|
|
|
9ae3a8 |
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
|
|
9ae3a8 |
---
|
|
|
9ae3a8 |
util/uri.c | 36 +++++++++++-------------------------
|
|
|
9ae3a8 |
1 file changed, 11 insertions(+), 25 deletions(-)
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
diff --git a/util/uri.c b/util/uri.c
|
|
|
9ae3a8 |
index 918d235..aa39694 100644
|
|
|
9ae3a8 |
--- a/util/uri.c
|
|
|
9ae3a8 |
+++ b/util/uri.c
|
|
|
9ae3a8 |
@@ -928,12 +928,10 @@ uri_parse(const char *str) {
|
|
|
9ae3a8 |
if (str == NULL)
|
|
|
9ae3a8 |
return(NULL);
|
|
|
9ae3a8 |
uri = uri_new();
|
|
|
9ae3a8 |
- if (uri != NULL) {
|
|
|
9ae3a8 |
- ret = rfc3986_parse_uri_reference(uri, str);
|
|
|
9ae3a8 |
- if (ret) {
|
|
|
9ae3a8 |
- uri_free(uri);
|
|
|
9ae3a8 |
- return(NULL);
|
|
|
9ae3a8 |
- }
|
|
|
9ae3a8 |
+ ret = rfc3986_parse_uri_reference(uri, str);
|
|
|
9ae3a8 |
+ if (ret) {
|
|
|
9ae3a8 |
+ uri_free(uri);
|
|
|
9ae3a8 |
+ return(NULL);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
return(uri);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
@@ -974,15 +972,13 @@ uri_parse_raw(const char *str, int raw) {
|
|
|
9ae3a8 |
if (str == NULL)
|
|
|
9ae3a8 |
return(NULL);
|
|
|
9ae3a8 |
uri = uri_new();
|
|
|
9ae3a8 |
- if (uri != NULL) {
|
|
|
9ae3a8 |
- if (raw) {
|
|
|
9ae3a8 |
- uri->cleanup |= 2;
|
|
|
9ae3a8 |
- }
|
|
|
9ae3a8 |
- ret = uri_parse_into(uri, str);
|
|
|
9ae3a8 |
- if (ret) {
|
|
|
9ae3a8 |
- uri_free(uri);
|
|
|
9ae3a8 |
- return(NULL);
|
|
|
9ae3a8 |
- }
|
|
|
9ae3a8 |
+ if (raw) {
|
|
|
9ae3a8 |
+ uri->cleanup |= 2;
|
|
|
9ae3a8 |
+ }
|
|
|
9ae3a8 |
+ ret = uri_parse_into(uri, str);
|
|
|
9ae3a8 |
+ if (ret) {
|
|
|
9ae3a8 |
+ uri_free(uri);
|
|
|
9ae3a8 |
+ return(NULL);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
return(uri);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
@@ -1675,8 +1671,6 @@ uri_resolve(const char *uri, const char *base) {
|
|
|
9ae3a8 |
else {
|
|
|
9ae3a8 |
if (*uri) {
|
|
|
9ae3a8 |
ref = uri_new();
|
|
|
9ae3a8 |
- if (ref == NULL)
|
|
|
9ae3a8 |
- goto done;
|
|
|
9ae3a8 |
ret = uri_parse_into(ref, uri);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
else
|
|
|
9ae3a8 |
@@ -1695,8 +1689,6 @@ uri_resolve(const char *uri, const char *base) {
|
|
|
9ae3a8 |
ret = -1;
|
|
|
9ae3a8 |
else {
|
|
|
9ae3a8 |
bas = uri_new();
|
|
|
9ae3a8 |
- if (bas == NULL)
|
|
|
9ae3a8 |
- goto done;
|
|
|
9ae3a8 |
ret = uri_parse_into(bas, base);
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
if (ret != 0) {
|
|
|
9ae3a8 |
@@ -1727,8 +1719,6 @@ uri_resolve(const char *uri, const char *base) {
|
|
|
9ae3a8 |
* document.
|
|
|
9ae3a8 |
*/
|
|
|
9ae3a8 |
res = uri_new();
|
|
|
9ae3a8 |
- if (res == NULL)
|
|
|
9ae3a8 |
- goto done;
|
|
|
9ae3a8 |
if ((ref->scheme == NULL) && (ref->path == NULL) &&
|
|
|
9ae3a8 |
((ref->authority == NULL) && (ref->server == NULL))) {
|
|
|
9ae3a8 |
res->scheme = g_strdup(bas->scheme);
|
|
|
9ae3a8 |
@@ -1933,8 +1923,6 @@ uri_resolve_relative (const char *uri, const char * base)
|
|
|
9ae3a8 |
* First parse URI into a standard form
|
|
|
9ae3a8 |
*/
|
|
|
9ae3a8 |
ref = uri_new ();
|
|
|
9ae3a8 |
- if (ref == NULL)
|
|
|
9ae3a8 |
- return NULL;
|
|
|
9ae3a8 |
/* If URI not already in "relative" form */
|
|
|
9ae3a8 |
if (uri[0] != '.') {
|
|
|
9ae3a8 |
ret = uri_parse_into (ref, uri);
|
|
|
9ae3a8 |
@@ -1951,8 +1939,6 @@ uri_resolve_relative (const char *uri, const char * base)
|
|
|
9ae3a8 |
goto done;
|
|
|
9ae3a8 |
}
|
|
|
9ae3a8 |
bas = uri_new ();
|
|
|
9ae3a8 |
- if (bas == NULL)
|
|
|
9ae3a8 |
- goto done;
|
|
|
9ae3a8 |
if (base[0] != '.') {
|
|
|
9ae3a8 |
ret = uri_parse_into (bas, base);
|
|
|
9ae3a8 |
if (ret != 0)
|
|
|
9ae3a8 |
--
|
|
|
9ae3a8 |
1.8.3.1
|
|
|
9ae3a8 |
|