Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
xfce:xfce4-panel:debugging [2019/12/09 10:36] – kevinbowen | xfce:xfce4-panel:debugging [2024/01/03 16:37] (current) – Formatting gael | ||
---|---|---|---|
Line 25: | Line 25: | ||
===== Debugging Plugins ===== | ===== Debugging Plugins ===== | ||
- | If an external plugin crashed, the panel will automatically restart | + | If an external plugin |
==== GDB ==== | ==== GDB ==== | ||
- | If you start the panel with '' | + | If you start the panel with '' |
This does not mean that the output contains valuable information. For good backtraces, it is still recommended to create a debug-build of the plugin. | This does not mean that the output contains valuable information. For good backtraces, it is still recommended to create a debug-build of the plugin. | ||
Line 36: | Line 36: | ||
To detect memory leaks and corruptions, | To detect memory leaks and corruptions, | ||
+ | |||
+ | ==== Running the plugin as internal ==== | ||
+ | |||
+ | When you don't just want to collect a backtrace after a crash, it can sometimes be more convenient to use the above debugging tools directly on the panel, running the plugin as internal (i.e. in the same process as the panel). It's also more convenient in this case to run only the plugin to be debugged on a single panel, which requires you to make a backup of your configuration beforehand. | ||
+ | |||
+ | The procedure is as follows: | ||
+ | * Save the panel configuration via [[apps: | ||
+ | * Edit the plugin desktop file (normally located in ''/ | ||
+ | * Create a new blank panel and delete all others. | ||
+ | * Add the plugin to be debugged to the new panel. | ||
+ | * Run '' | ||
+ | * Run '' | ||
+ | * When debugging is complete, restore configuration via xfce4-panel-profiles. | ||
+ | |||
+ | Note that some bugs may only appear when the plugin is run as internal or external. This is typically the case for bugs related to the way external plugins are embedded in the panel (XEmbed protocol on X11, embedded compositor or layer-shell window stacking on Wayland). However, the essential behavior of the plugin remains the same in both execution modes. | ||
[[|Back to Top]] | [[|Back to Top]] | ||
---- | ---- | ||
[[: | [[: |