Sanitize insopts when calling doins, in order to avoid prior insopts
calls accidentally affecting do*/new* functions defined by the eclass.
---
eclass/desktop.eclass | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/eclass/desktop.eclass b/eclass/desktop.eclass
index d65b0d0bf074..7889b6fe87a9 100644
--- a/eclass/desktop.eclass
+++ b/eclass/desktop.eclass
@@ -195,6 +195,7 @@ make_desktop_entry() {
(
# wrap the env here so that the 'insinto' call
# doesn't corrupt the env of the caller
+ insopts
insinto /usr/share/applications
doins "${desktop}"
) || die "installing desktop file failed"
@@ -228,6 +229,7 @@ make_session_desktop() {
(
# wrap the env here so that the 'insinto' call
# doesn't corrupt the env of the caller
+ insopts
insinto /usr/share/xsessions
doins "${desktop}"
)
@@ -243,6 +245,7 @@ domenu() {
# wrap the env here so that the 'insinto' call
# doesn't corrupt the env of the caller
local i j ret=0
+ insopts
insinto /usr/share/applications
for i in "$@" ; do
if [[ -f ${i} ]] ; then
@@ -269,6 +272,7 @@ newmenu() {
(
# wrap the env here so that the 'insinto' call
# doesn't corrupt the env of the caller
+ insopts
insinto /usr/share/applications
newins "$@"
)
@@ -282,6 +286,7 @@ _iconins() {
(
# wrap the env here so that the 'insinto' call
# doesn't corrupt the env of the caller
+ insopts
local funcname=$1; shift
local size dir
local context=apps
--
2.18.0.rc1