summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/icewm/Makefile4
-rw-r--r--x11-wm/icewm/distinfo6
-rw-r--r--x11-wm/icewm/pkg-plist1
-rw-r--r--x11-wm/lxqt-panel/Makefile5
-rw-r--r--x11-wm/lxqt-panel/distinfo6
-rw-r--r--x11-wm/lxqt-panel/files/patch-CMakeLists.txt12
-rw-r--r--x11-wm/lxqt-panel/files/patch-panel_resources_panel.conf6
-rw-r--r--x11-wm/lxqt-panel/files/patch-plugin-kbindicator_src_x11_kbdlayout.cpp4
-rw-r--r--x11-wm/lxqt-panel/files/patch-plugin-sysstat_lxqtsysstat.cpp4
-rw-r--r--x11-wm/lxqt-panel/pkg-plist12
-rw-r--r--x11-wm/swayfx/Makefile11
-rw-r--r--x11-wm/swayfx/distinfo6
-rw-r--r--x11-wm/swayfx/files/patch-common_stringop.c53
13 files changed, 106 insertions, 24 deletions
diff --git a/x11-wm/icewm/Makefile b/x11-wm/icewm/Makefile
index 300fcc5797e8..f33312fa3b9a 100644
--- a/x11-wm/icewm/Makefile
+++ b/x11-wm/icewm/Makefile
@@ -1,9 +1,9 @@
PORTNAME= icewm
-PORTVERSION= 3.7.5
+PORTVERSION= 3.8.0
CATEGORIES= x11-wm
MASTER_SITES= https://github.com/ice-wm/icewm/releases/download/${PORTVERSION}/
-MAINTAINER= portmaster@bsdforge.com
+MAINTAINER= danfe@FreeBSD.org
COMMENT= Window manager designed for speed and usability
WWW= https://ice-wm.org/
diff --git a/x11-wm/icewm/distinfo b/x11-wm/icewm/distinfo
index 4d8fb4c9b5ef..14b9e9bdf3c3 100644
--- a/x11-wm/icewm/distinfo
+++ b/x11-wm/icewm/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1748200620
-SHA256 (icewm-3.7.5.tar.lz) = 7457ec08fa74a101b077f391d60f901a77919dcc83a2940992f1f88cd7ec840a
-SIZE (icewm-3.7.5.tar.lz) = 1867161
+TIMESTAMP = 1750629638
+SHA256 (icewm-3.8.0.tar.lz) = 525df5fc9d328bd3ead25f2e262d2a15bdfa8fe7828d98f111a064dd169ac18f
+SIZE (icewm-3.8.0.tar.lz) = 1884539
diff --git a/x11-wm/icewm/pkg-plist b/x11-wm/icewm/pkg-plist
index 4846e81be51a..e32265439553 100644
--- a/x11-wm/icewm/pkg-plist
+++ b/x11-wm/icewm/pkg-plist
@@ -615,6 +615,7 @@ bin/icewmhint
%%NLS%%share/locale/ru/LC_MESSAGES/icewm.mo
%%NLS%%share/locale/sk/LC_MESSAGES/icewm.mo
%%NLS%%share/locale/sl/LC_MESSAGES/icewm.mo
+%%NLS%%share/locale/sr/LC_MESSAGES/icewm.mo
%%NLS%%share/locale/sv/LC_MESSAGES/icewm.mo
%%NLS%%share/locale/tr/LC_MESSAGES/icewm.mo
%%NLS%%share/locale/uk/LC_MESSAGES/icewm.mo
diff --git a/x11-wm/lxqt-panel/Makefile b/x11-wm/lxqt-panel/Makefile
index 0cc3330a5298..b5801c1f805f 100644
--- a/x11-wm/lxqt-panel/Makefile
+++ b/x11-wm/lxqt-panel/Makefile
@@ -1,6 +1,5 @@
PORTNAME= lxqt-panel
-PORTVERSION= 2.2.1
-PORTREVISION= 1
+PORTVERSION= 2.2.2
CATEGORIES= x11-wm
MASTER_SITES= LXQT
@@ -19,7 +18,7 @@ LIB_DEPENDS= libdbusmenu-lxqt.so:devel/libdbusmenu-lxqt \
BUILD_DEPENDS= lxqt-menu-data>=2.0.0:x11/lxqt-menu-data
RUN_DEPENDS= lxqt-menu-data>=2.0.0:x11/lxqt-menu-data
-USES= cmake compiler:c++20-lang gettext-runtime kde:6 qt:6 gnome \
+USES= cmake compiler:c++17-lang gettext-runtime kde:6 qt:6 gnome \
lxqt:2 localbase:ldflags perl5 pkgconfig tar:xz xorg
USE_PERL5= build
USE_QT= base:run tools:build svg
diff --git a/x11-wm/lxqt-panel/distinfo b/x11-wm/lxqt-panel/distinfo
index 09ef1b9e78b8..b6f2884eff55 100644
--- a/x11-wm/lxqt-panel/distinfo
+++ b/x11-wm/lxqt-panel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1748036028
-SHA256 (lxqt/lxqt-panel-2.2.1.tar.xz) = 63d7f8af2e85b1a2580441943230fb4ab6edaaf52fd29fe0e616f6d57fd05d16
-SIZE (lxqt/lxqt-panel-2.2.1.tar.xz) = 717960
+TIMESTAMP = 1750694736
+SHA256 (lxqt/lxqt-panel-2.2.2.tar.xz) = 5d150e7a4e8818715b8f4eec7f4bb26c98f740cd56f972199b35fc7c81da1969
+SIZE (lxqt/lxqt-panel-2.2.2.tar.xz) = 724996
diff --git a/x11-wm/lxqt-panel/files/patch-CMakeLists.txt b/x11-wm/lxqt-panel/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..15f730663342
--- /dev/null
+++ b/x11-wm/lxqt-panel/files/patch-CMakeLists.txt
@@ -0,0 +1,12 @@
+--- CMakeLists.txt.orig 2025-06-22 20:12:06 UTC
++++ CMakeLists.txt
+@@ -65,6 +65,9 @@ add_definitions(
+ -DPLUGIN_DIR=\"${PLUGIN_DIR}\"
+ )
+
++set(CMAKE_CXX_STANDARD 17)
++set(CMAKE_CXX_STANDARD_REQUIRED ON)
++
+ message(STATUS "CMAKE Module linker flags: ${CMAKE_MODULE_LINKER_FLAGS}")
+ message(STATUS "Panel plugins location: ${PLUGIN_DIR}")
+
diff --git a/x11-wm/lxqt-panel/files/patch-panel_resources_panel.conf b/x11-wm/lxqt-panel/files/patch-panel_resources_panel.conf
index 52de8ac9ee54..f1d091058686 100644
--- a/x11-wm/lxqt-panel/files/patch-panel_resources_panel.conf
+++ b/x11-wm/lxqt-panel/files/patch-panel_resources_panel.conf
@@ -1,6 +1,6 @@
---- panel/resources/panel.conf 2024-04-17 06:16:32.000000000 -0500
-+++ panel/resources/panel.conf 2024-04-25 15:24:07.715937000 -0500
-@@ -1,7 +1,7 @@
+--- panel/resources/panel.conf.orig 2025-06-22 20:12:06 UTC
++++ panel/resources/panel.conf
+@@ -1,7 +1,7 @@ panels=panel1
panels=panel1
[panel1]
diff --git a/x11-wm/lxqt-panel/files/patch-plugin-kbindicator_src_x11_kbdlayout.cpp b/x11-wm/lxqt-panel/files/patch-plugin-kbindicator_src_x11_kbdlayout.cpp
index 031463573e24..11eef2b04731 100644
--- a/x11-wm/lxqt-panel/files/patch-plugin-kbindicator_src_x11_kbdlayout.cpp
+++ b/x11-wm/lxqt-panel/files/patch-plugin-kbindicator_src_x11_kbdlayout.cpp
@@ -1,6 +1,6 @@
---- plugin-kbindicator/src/x11/kbdlayout.cpp.orig 2020-04-24 02:39:01 UTC
+--- plugin-kbindicator/src/x11/kbdlayout.cpp.orig 2025-06-22 20:12:06 UTC
+++ plugin-kbindicator/src/x11/kbdlayout.cpp
-@@ -245,10 +245,10 @@ class X11Kbd: public QAbstractNativeEventFilter (priva
+@@ -244,10 +244,10 @@ class X11Kbd: public QAbstractNativeEventFilter (priva
static LangInfo def{QStringLiteral("Unknown"), QStringLiteral("??"), QStringLiteral("None")};
static QHash<QString, LangInfo> names;
if (names.empty()){
diff --git a/x11-wm/lxqt-panel/files/patch-plugin-sysstat_lxqtsysstat.cpp b/x11-wm/lxqt-panel/files/patch-plugin-sysstat_lxqtsysstat.cpp
index cbd95ee5e256..671f145fb5b3 100644
--- a/x11-wm/lxqt-panel/files/patch-plugin-sysstat_lxqtsysstat.cpp
+++ b/x11-wm/lxqt-panel/files/patch-plugin-sysstat_lxqtsysstat.cpp
@@ -1,6 +1,6 @@
---- plugin-sysstat/lxqtsysstat.cpp.orig 2021-05-02 21:18:35 UTC
+--- plugin-sysstat/lxqtsysstat.cpp.orig 2025-06-22 20:12:06 UTC
+++ plugin-sysstat/lxqtsysstat.cpp
-@@ -386,10 +386,11 @@ void LXQtSysStatContent::clearLine()
+@@ -395,10 +395,11 @@ void LXQtSysStatContent::cpuLoadFrequencyUpdate(float
void LXQtSysStatContent::cpuLoadFrequencyUpdate(float user, float nice, float system, float other, float frequencyRate, uint)
{
diff --git a/x11-wm/lxqt-panel/pkg-plist b/x11-wm/lxqt-panel/pkg-plist
index 93917862595c..ec225073f3cc 100644
--- a/x11-wm/lxqt-panel/pkg-plist
+++ b/x11-wm/lxqt-panel/pkg-plist
@@ -106,6 +106,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_ru.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_sk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_sr.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_zh_CN.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/colorpicker/colorpicker_zh_TW.qm
@@ -384,6 +385,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_sr@latin.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_sr_BA.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_sr_RS.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_th_TH.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/fancymenu/fancymenu_uk.qm
@@ -539,6 +541,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_sr@latin.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_sr_BA.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_sr_RS.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_th_TH.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/mainmenu/mainmenu_uk.qm
@@ -592,6 +595,7 @@ share/applications/lxqt-panel.desktop
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_sr@latin.qm
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_sr_BA.qm
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_sr_RS.qm
+%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_sv.qm
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_th_TH.qm
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_tr.qm
%%MOUNT%%%%LXQT_TRANSLATIONS%%/lxqt-panel/mount/mount_uk.qm
@@ -622,6 +626,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_ru.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_sk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_sr.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/qeyes/qeyes_zh_CN.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_ar.qm
@@ -671,6 +676,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_sr@latin.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_sr_BA.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_sr_RS.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_th_TH.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/quicklaunch/quicklaunch_uk.qm
@@ -724,6 +730,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_sr@latin.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_sr_BA.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_sr_RS.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_th_TH.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/showdesktop/showdesktop_uk.qm
@@ -767,6 +774,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_si.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_sk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_sr.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_uk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/spacer/spacer_zh_CN.qm
@@ -805,6 +813,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_ru.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_si.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_sk_SK.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_uk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/statusnotifier/statusnotifier_zh_CN.qm
@@ -847,6 +856,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_ru.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_si.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_sk_SK.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_uk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/sysstat/sysstat_zh_CN.qm
@@ -898,6 +908,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_sr@latin.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_sr_BA.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_sr_RS.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_th_TH.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/taskbar/taskbar_uk.qm
@@ -991,6 +1002,7 @@ share/applications/lxqt-panel.desktop
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_si.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_sk_SK.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_sr.qm
+%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_sv.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_tr.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_uk.qm
%%LXQT_TRANSLATIONS%%/lxqt-panel/worldclock/worldclock_zh_CN.qm
diff --git a/x11-wm/swayfx/Makefile b/x11-wm/swayfx/Makefile
index 4b1152132f20..3905e9713045 100644
--- a/x11-wm/swayfx/Makefile
+++ b/x11-wm/swayfx/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sway
-DISTVERSION= 0.5.1
+DISTVERSION= 0.5.2
CATEGORIES= x11-wm wayland
PKGNAMESUFFIX= ${GH_PROJECT:S/${PORTNAME}//}
@@ -18,8 +18,8 @@ LIB_DEPENDS= libjson-c.so:devel/json-c \
libpcre2-8.so:devel/pcre2 \
libdrm.so:graphics/libdrm \
libwayland-egl.so:graphics/wayland \
- libscenefx-0.3.so:x11-toolkits/scenefx03 \
- libwlroots-0.18.so:x11-toolkits/wlroots018 \
+ libscenefx-0.4.so:x11-toolkits/scenefx04 \
+ libwlroots-0.19.so:x11-toolkits/wlroots019 \
libinput.so:x11/libinput \
libxkbcommon.so:x11/libxkbcommon
@@ -61,5 +61,10 @@ post-patch:
@${REINPLACE_CMD} -i .nogit -e 's/git.found()/false/' \
-e '/project_version/s/@0@/${DISTVERSIONFULL}/' \
${WRKSRC}/meson.build
+.if exists(${.CURDIR}/files/patch-common_stringop.c)
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=275328
+ @${REINPLACE_CMD} -e 's/_POSIX_C_SOURCE=200809L/_XOPEN_SOURCE=700/' \
+ ${WRKSRC}/meson.build
+.endif
.include <bsd.port.mk>
diff --git a/x11-wm/swayfx/distinfo b/x11-wm/swayfx/distinfo
index 77c1f7511e03..f6ff68ffc12d 100644
--- a/x11-wm/swayfx/distinfo
+++ b/x11-wm/swayfx/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1749449281
-SHA256 (WillPower3309-swayfx-0.5.1_GH0.tar.gz) = 99b6f4243c2a89d3ad0d78fa56d262ee92bdbd9965117d08bca2fed909586943
-SIZE (WillPower3309-swayfx-0.5.1_GH0.tar.gz) = 17595318
+TIMESTAMP = 1750743210
+SHA256 (WillPower3309-swayfx-0.5.2_GH0.tar.gz) = 075e1a9577f96a71154c61997355dce569816fff05a2c535ec15b252a9acbbe1
+SIZE (WillPower3309-swayfx-0.5.2_GH0.tar.gz) = 17597449
diff --git a/x11-wm/swayfx/files/patch-common_stringop.c b/x11-wm/swayfx/files/patch-common_stringop.c
new file mode 100644
index 000000000000..5a9f187e11df
--- /dev/null
+++ b/x11-wm/swayfx/files/patch-common_stringop.c
@@ -0,0 +1,53 @@
+https://github.com/swaywm/sway/issues/8673#issuecomment-2818260191
+
+--- common/stringop.c.orig 2025-04-20 11:31:10 UTC
++++ common/stringop.c
+@@ -6,6 +6,8 @@
+ #include <string.h>
+ #include <strings.h>
+ #include <wordexp.h>
++#include <signal.h>
++#include <sys/wait.h>
+ #include "list.h"
+ #include "log.h"
+ #include "stringop.h"
+@@ -318,11 +320,34 @@ bool expand_path(char **path) {
+ char *ptr = strstr(*path, " ") + 1;
+ memmove(ptr + 1, ptr, strlen(ptr) + 1);
+ *ptr = '\\';
+- }
+- if (wordexp(*path, &p, 0) != 0 || p.we_wordv[0] == NULL) {
+- wordfree(&p);
+- return false;
+- }
++ }
++
++ // FreeBSD wordexp bug workaround:
++ // 1. Reset SIGCHLD handler
++ // 2. Run wordexp
++ // 3. Restore SIGCHLD handler and reap any processes that exited
++ struct sigaction prev_action;
++ struct sigaction new_action = {
++ .sa_flags = SA_RESETHAND,
++ };
++ if (sigaction(SIGCHLD, &new_action, &prev_action) != 0) {
++ sway_log(SWAY_ERROR, "Restoring sigchild before wordexp failed");
++ return false;
++ }
++
++ int res = wordexp(*path, &p, 0);
++
++ if (sigaction(SIGCHLD, &prev_action, NULL) != 0) {
++ sway_log(SWAY_ERROR, "Restoring sigchild after wordexp failed");
++ }
++
++ int status;
++ while (waitpid(-1, &status, WNOHANG) != -1 || errno == EINTR);
++
++ if (res != 0 || p.we_wordv[0] == NULL) {
++ wordfree(&p);
++ return false;
++ }
+ free(*path);
+ *path = join_args(p.we_wordv, p.we_wordc);
+ wordfree(&p);