1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
From: Karel Zak <kzak@redhat.com>
Date: Mon, 22 Apr 2024 11:51:56 +0200
Subject: lsblk: simplify SOURCES code
This complicated implementation originated from an early version of
zero-separated items for libsmartcols. It is no longer necessary.
References: https://github.com/util-linux/util-linux/pull/2983
Signed-off-by: Karel Zak <kzak@redhat.com>
(cherry picked from commit af4c7dac191abadc33aae75916583c890cd2ebc3)
---
libsmartcols/src/column.c | 2 +-
misc-utils/lsblk.c | 8 +++-----
2 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/libsmartcols/src/column.c b/libsmartcols/src/column.c
index 5700bac..586a485 100644
--- a/libsmartcols/src/column.c
+++ b/libsmartcols/src/column.c
@@ -470,7 +470,7 @@ char *scols_wrapnl_nextchunk(const struct libscols_column *cl __attribute__((unu
* This is built-in function for scols_column_set_wrapfunc(). This function
* walk string separated by \0.
*
- * For example for data "AAA\0BBB\0CCC" the next chunk is "BBB".
+ * For example for data "AAA\0BBB\0CCC\0" the next chunk is "BBB".
*
* Returns: next chunk
*
diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c
index 30bd2ed..15d9b19 100644
--- a/misc-utils/lsblk.c
+++ b/misc-utils/lsblk.c
@@ -935,8 +935,7 @@ static char *device_get_data(
ul_buffer_append_string(&buf, "[SWAP]");
else
ul_buffer_append_string(&buf, mnt_fs_get_target(fs));
- if (i + 1 < n)
- ul_buffer_append_data(&buf, "\0", 1);
+ ul_buffer_append_data(&buf, "\0", 1);
}
str = ul_buffer_get_data(&buf, datasiz, NULL);
break;
@@ -953,8 +952,7 @@ static char *device_get_data(
if (mnt_fs_is_swaparea(fs))
continue;
ul_buffer_append_string(&buf, root ? root : "/");
- if (i + 1 < n)
- ul_buffer_append_data(&buf, "\0", 1);
+ ul_buffer_append_data(&buf, "\0", 1);
}
str = ul_buffer_get_data(&buf, datasiz, NULL);
break;
@@ -1276,7 +1274,7 @@ static void device_fill_scols_cell(struct lsblk_device *dev,
ce = scols_line_get_cell(ln, colnum);
if (!ce)
return;
- rc = datasiz ? scols_cell_refer_memory(ce, data, datasiz + 1)
+ rc = datasiz ? scols_cell_refer_memory(ce, data, datasiz)
: scols_cell_refer_data(ce, data);
if (rc)
err(EXIT_FAILURE, _("failed to add output data"));
|