summary refs log tree commit diff
path: root/kbfunc.c
diff options
context:
space:
mode:
authorokan <okan>2012-10-31 19:30:19 +0000
committerokan <okan>2012-10-31 19:30:19 +0000
commit4fb420514d73699acfc7ec1c35124cf7819a277f (patch)
treedf19048fe40a84ea2ca51ebfdcf360f3ffcb8dbc /kbfunc.c
parentc256052308d9135454b91fa16ba7aaef97923b4b (diff)
downloadcwm-4fb420514d73699acfc7ec1c35124cf7819a277f.tar.gz
cwm-4fb420514d73699acfc7ec1c35124cf7819a277f.tar.xz
cwm-4fb420514d73699acfc7ec1c35124cf7819a277f.zip
replace 'reload' with 'restart', which merely re-exec's cwm using the
existing argv; same idea with respect to argv saving as Alexander
Polakov.  reload support was half-complete and is getting in the way.

agreed to by many
Diffstat (limited to 'kbfunc.c')
-rw-r--r--kbfunc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kbfunc.c b/kbfunc.c
index 2b26416..e11a3cb 100644
--- a/kbfunc.c
+++ b/kbfunc.c
@@ -35,6 +35,7 @@
 #define KNOWN_HOSTS	".ssh/known_hosts"
 #define HASH_MARKER	"|1|"
 
+extern char		**cwm_argv;
 extern sig_atomic_t	xev_quit;
 
 void
@@ -490,7 +491,8 @@ kbfunc_quit_wm(struct client_ctx *cc, union arg *arg)
 }
 
 void
-kbfunc_reload(struct client_ctx *cc, union arg *arg)
+kbfunc_restart(struct client_ctx *cc, union arg *arg)
 {
-	conf_reload(&Conf);
+	(void)setsid();
+	(void)execvp(cwm_argv[0], cwm_argv);
 }