From 61949538ad6d114c1c2a788928a0b9706b4efc76 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Fri, 1 May 2026 20:46:21 +0200 Subject: debug: add support for kstd pretty printing --- scripts/gdb/kstd/string.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 scripts/gdb/kstd/string.py (limited to 'scripts/gdb/kstd/string.py') diff --git a/scripts/gdb/kstd/string.py b/scripts/gdb/kstd/string.py new file mode 100644 index 0000000..6fa9996 --- /dev/null +++ b/scripts/gdb/kstd/string.py @@ -0,0 +1,26 @@ +import gdb + + +class KstdStringPrinter: + + def __init__(self, val): + self.val = val + + def to_string(self): + storage = self.val["m_storage"] + storage_size = int(storage["m_size"]) + + if storage_size <= 0: + return '""' + + data_pointer = storage["m_data"] + string_length = storage_size - 1 + + try: + string_data = data_pointer.string(encoding="utf-8", length=string_length) + return f"{string_data}" + except gdb.error: + return "" + + def display_hint(self): + return "string" -- cgit v1.2.3