summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-05-01 08:23:00 +0200
committerLubomir Rintel <lkundrak@v3.sk>2019-05-15 14:07:07 +0200
commitdd3ca10284f9f7f95b1f313a3aa678f2aef01b3f (patch)
tree652eec7cce1850bc41b75679d727d29868bb228f
parentef2b660bb8cb2c30faf55c51a411e8a757707076 (diff)
downloadNetworkManager-dd3ca10284f9f7f95b1f313a3aa678f2aef01b3f.tar.gz
platform: fix nm_platform_qdisc_to_string()
When using nm_utils_strbuf_*() API, the buffer gets always moved to the current end. We must thus remember and return the original start of the buffer. (cherry picked from commit b658e3da0825cf6e62e0850d3508dde1dd5c1914)
-rw-r--r--src/platform/nm-platform.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c
index f8cf0b8999..4d3b61405d 100644
--- a/src/platform/nm-platform.c
+++ b/src/platform/nm-platform.c
@@ -6427,10 +6427,13 @@ const char *
nm_platform_qdisc_to_string (const NMPlatformQdisc *qdisc, char *buf, gsize len)
{
char str_dev[TO_STRING_DEV_BUF_SIZE];
+ const char *buf0;
if (!nm_utils_to_string_buffer_init_null (qdisc, &buf, &len))
return buf;
+ buf0 = buf;
+
nm_utils_strbuf_append (&buf, &len, "%s%s family %u handle %x parent %x info %x",
qdisc->kind,
_to_string_dev (NULL, qdisc->ifindex, str_dev, sizeof (str_dev)),
@@ -6458,7 +6461,7 @@ nm_platform_qdisc_to_string (const NMPlatformQdisc *qdisc, char *buf, gsize len)
nm_utils_strbuf_append (&buf, &len, " ecn");
}
- return buf;
+ return buf0;
}
void