Skip to content

gdb: variables ui breaks after expanding locals #289

@Arcturuss

Description

@Arcturuss

When expanding some structs while debugging C++ with GDB, the debugger UI on bottom panel disappears and never reappears again. Only debugger console is shown on the panel then. Closing and reopening debugger doesn't work.

Windows 10, latest versions of ST4 and Debugger from package control.

There is error in the 'show protocol' window:

Traceback (most recent call last):
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\core\asyncio.py", line 94, in __call__
    self.callback(*self.args)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 73, in render_layouts
    r.render()
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\phantom.py", line 22, in render
    updated = super().render()
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 204, in render
    self.render_element_tree(self.item)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 183, in render_element_tree
    self.render_element_tree(child)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 183, in render_element_tree
    self.render_element_tree(child)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 183, in render_element_tree
    self.render_element_tree(child)
  [Previous line repeated 5 more times]
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 195, in render_element_tree
    self.render_element_tree(child, True)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 195, in render_element_tree
    self.render_element_tree(child, True)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\layout.py", line 190, in render_element_tree
    item.perform_render()
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\html.py", line 100, in perform_render
    self.render()
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\views\variable.py", line 246, in render
    self.render_header(name, value, is_expandable, is_expanded)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\views\variable.py", line 200, in render_header
    ui.code(value, on_click=self.edit_variable)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\html.py", line 43, in __call__
    instance = super().__call__(*args, **kwargs)
  File "C:\Users\user\AppData\Roaming\Sublime Text\Packages\Debugger\modules\ui\html.py", line 291, in __init__
    self.text = text.replace('\n', '\\n')
AttributeError: 'list' object has no attribute 'replace'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions