[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 32/33] block: Use GString instead of QString to build filenames
From: |
Markus Armbruster |
Subject: |
[PULL 32/33] block: Use GString instead of QString to build filenames |
Date: |
Sat, 19 Dec 2020 11:55:31 +0100 |
QString supports modifying its string, but it's quite limited: you can
only append. Just one caller remains:
bdrv_parse_filename_strip_prefix() uses it just for building an
initial string.
Change it to do build the initial string with GString. This is
another step towards making QString immutable.
Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Max Reitz <mreitz@redhat.com>
Cc: qemu-block@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20201211171152.146877-20-armbru@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
---
block.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/block.c b/block.c
index 934d1bcc8f..27b2c3ba15 100644
--- a/block.c
+++ b/block.c
@@ -217,7 +217,7 @@ void bdrv_parse_filename_strip_prefix(const char *filename,
const char *prefix,
/* Stripping the explicit protocol prefix may result in a protocol
* prefix being (wrongly) detected (if the filename contains a colon)
*/
if (path_has_protocol(filename)) {
- QString *fat_filename;
+ GString *fat_filename;
/* This means there is some colon before the first slash;
therefore,
* this cannot be an absolute path */
@@ -225,12 +225,13 @@ void bdrv_parse_filename_strip_prefix(const char
*filename, const char *prefix,
/* And we can thus fix the protocol detection issue by prefixing it
* by "./" */
- fat_filename = qstring_from_str("./");
- qstring_append(fat_filename, filename);
+ fat_filename = g_string_new("./");
+ g_string_append(fat_filename, filename);
- assert(!path_has_protocol(qstring_get_str(fat_filename)));
+ assert(!path_has_protocol(fat_filename->str));
- qdict_put(options, "filename", fat_filename);
+ qdict_put(options, "filename",
+ qstring_from_gstring(fat_filename));
} else {
/* If no protocol prefix was detected, we can use the shortened
* filename as-is */
--
2.26.2
- [PULL 20/33] hw/rdma: Replace QList by GQueue, (continued)
- [PULL 20/33] hw/rdma: Replace QList by GQueue, Markus Armbruster, 2020/12/19
- [PULL 23/33] block: Avoid qobject_get_try_str(), Markus Armbruster, 2020/12/19
- [PULL 28/33] qobject: Factor JSON writer out of qobject_to_json(), Markus Armbruster, 2020/12/19
- [PULL 25/33] qobject: Drop qobject_get_try_str(), Markus Armbruster, 2020/12/19
- [PULL 30/33] json: Use GString instead of QString to accumulate strings, Markus Armbruster, 2020/12/19
- [PULL 31/33] keyval: Use GString to accumulate value strings, Markus Armbruster, 2020/12/19
- [PULL 18/33] qobject: Change qobject_to_json()'s value to GString, Markus Armbruster, 2020/12/19
- [PULL 33/33] qobject: Make QString immutable, Markus Armbruster, 2020/12/19
- [PULL 27/33] qobject: Factor quoted_str() out of to_json(), Markus Armbruster, 2020/12/19
- [PULL 29/33] migration: Replace migration's JSON writer by the general one, Markus Armbruster, 2020/12/19
- [PULL 32/33] block: Use GString instead of QString to build filenames,
Markus Armbruster <=
- [PULL 21/33] qobject: Move internals to qobject-internal.h, Markus Armbruster, 2020/12/19
- [PULL 14/33] hmp: Simplify how qmp_human_monitor_command() gets output, Markus Armbruster, 2020/12/19
- [PULL 17/33] qobject: Use GString instead of QString to accumulate JSON, Markus Armbruster, 2020/12/19
- [PULL 03/33] qapi: Use QAPI_LIST_PREPEND() where possible, Markus Armbruster, 2020/12/19
- [PULL 24/33] Revert "qobject: let object_property_get_str() use new API", Markus Armbruster, 2020/12/19
- Re: [PULL 00/33] QAPI patches patches for 2020-12-19, no-reply, 2020/12/19