Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
libdnf5: Load plugins with RTLD_NODELETE flag set
Some plugins can use libraries, which have saved global data and unloading such library can break this global data in a way which can cause a crash of the daemon. One such library is glib, where this unload can break its type system, with this shown on the dnf5daemon process console when it happens: ``` (process:49835): GLib-GObject-CRITICAL **: 15:47:52.469: cannot register existing type 'AsMetadata' (process:49835): GLib-GObject-CRITICAL **: 15:47:52.469: cannot add private field to invalid (non-instantiatable) type '<invalid>' (process:49835): GLib-CRITICAL **: 15:47:52.469: g_once_init_leave_pointer: assertion 'result != 0' failed (process:49835): GLib-GObject-CRITICAL **: 15:47:52.469: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed Segmentation fault (core dumped) ```
- Loading branch information