From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- x11-libs/libfm/files/libfm-fix-use-after-free.diff | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 x11-libs/libfm/files/libfm-fix-use-after-free.diff (limited to 'x11-libs/libfm/files') diff --git a/x11-libs/libfm/files/libfm-fix-use-after-free.diff b/x11-libs/libfm/files/libfm-fix-use-after-free.diff new file mode 100644 index 000000000000..4a0ae61c40b4 --- /dev/null +++ b/x11-libs/libfm/files/libfm-fix-use-after-free.diff @@ -0,0 +1,23 @@ +diff -Naur libfm-1.2.3/src/base/fm-config.c libfm-1.2.3-fix-uaf-new2/src/base/fm-config.c +--- libfm-1.2.3/src/base/fm-config.c 2014-10-14 18:29:21.000000000 +0200 ++++ libfm-1.2.3-fix-uaf-new2/src/base/fm-config.c 2016-06-18 18:23:35.721837971 +0200 +@@ -346,7 +346,8 @@ + cfg->modules_blacklist = NULL; + cfg->system_modules_blacklist = NULL; + _cfg_monitor_free(cfg); +- g_free(cfg->_cfg_name); ++ if(name != cfg->_cfg_name) ++ g_free(cfg->_cfg_name); + if(G_LIKELY(!name)) + name = "libfm/libfm.conf"; + else +@@ -363,7 +364,8 @@ + } + } + +- cfg->_cfg_name = g_strdup(name); ++ if(name != cfg->_cfg_name) ++ cfg->_cfg_name = g_strdup(name); + dirs = g_get_system_config_dirs(); + /* bug SF #887: first dir in XDG_CONFIG_DIRS is the most relevant + so we shoult process the list in reverse order */ -- cgit v1.2.3