valeriyvdovin / rpms / systemd

Forked from rpms/systemd 4 years ago
Clone
Blob Blame History Raw
From c4f60df10a2716c94d30462a118f60d916d537a2 Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Fri, 9 Nov 2018 11:38:12 +0100
Subject: [PATCH] format-table: add calls to query the data in a specific cell

(cherry picked from commit 62d99b39709f903f8a66a9aae757deb5546a53eb)

Related: #1689832
---
 src/basic/format-table.c | 22 ++++++++++++++++++++++
 src/basic/format-table.h |  3 +++
 2 files changed, 25 insertions(+)

diff --git a/src/basic/format-table.c b/src/basic/format-table.c
index 3fcb97475c..0a1777e9a2 100644
--- a/src/basic/format-table.c
+++ b/src/basic/format-table.c
@@ -1438,3 +1438,25 @@ TableCell *table_get_cell(Table *t, size_t row, size_t column) {
 
         return TABLE_INDEX_TO_CELL(i);
 }
+
+const void *table_get(Table *t, TableCell *cell) {
+        TableData *d;
+
+        assert(t);
+
+        d = table_get_data(t, cell);
+        if (!d)
+                return NULL;
+
+        return d->data;
+}
+
+const void* table_get_at(Table *t, size_t row, size_t column) {
+        TableCell *cell;
+
+        cell = table_get_cell(t, row, column);
+        if (!cell)
+                return NULL;
+
+        return table_get(t, cell);
+}
diff --git a/src/basic/format-table.h b/src/basic/format-table.h
index 40fea79f78..a2bb2e0846 100644
--- a/src/basic/format-table.h
+++ b/src/basic/format-table.h
@@ -68,3 +68,6 @@ size_t table_get_rows(Table *t);
 size_t table_get_columns(Table *t);
 
 TableCell *table_get_cell(Table *t, size_t row, size_t column);
+
+const void *table_get(Table *t, TableCell *cell);
+const void *table_get_at(Table *t, size_t row, size_t column);