Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'lib/smol_str/src/gdb_smolstr_printer.py')
| -rw-r--r-- | lib/smol_str/src/gdb_smolstr_printer.py | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/smol_str/src/gdb_smolstr_printer.py b/lib/smol_str/src/gdb_smolstr_printer.py index 5f28ddd5e6..2792aae09b 100644 --- a/lib/smol_str/src/gdb_smolstr_printer.py +++ b/lib/smol_str/src/gdb_smolstr_printer.py @@ -73,16 +73,14 @@ class SmolStrProvider: if variant_name == "Static": try: - data_ptr = variant_val["data_ptr"] - length = int(variant_val["length"]) - mem = gdb.selected_inferior().read_memory(int(data_ptr), length) - return _read_utf8(mem) + # variant_val["__0"] is &'static str + return variant_val["__0"] except Exception as e: return f"<SmolStr Static error: {e}>" if variant_name == "Heap": try: - # variant_val is an Arc<str> + # variant_val["__0"] is an Arc<str> inner = variant_val["__0"]["ptr"]["pointer"] # inner is a fat pointer to ArcInner<str> data_ptr = inner["data_ptr"] |