rc: fix automatic restart with runlevel-specific conf.d files
Commitfc4f15d6cd
broke the automatic restart of services having runlevel-specific conf.d files. The double dirname() was not a mistake, but the way of getting from the service script in init.d to the upper directory containing the conf.d directory. dirname() modifies the argument in-place, so the second call operated on a modified value. To make it more obvious what is going on, have the second call operate on the returned value from the first call. Fixes:fc4f15d
("openrc: fix double-assignment to dir") Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
This commit is contained in:
parent
cd53239701
commit
86efc43d0e
@ -527,7 +527,7 @@ runlevel_config(const char *service, const char *level)
|
|||||||
char *conf, *dir;
|
char *conf, *dir;
|
||||||
bool retval;
|
bool retval;
|
||||||
|
|
||||||
dir = dirname(init);
|
dir = dirname(dirname(init));
|
||||||
xasprintf(&conf, "%s/conf.d/%s.%s", dir, service, level);
|
xasprintf(&conf, "%s/conf.d/%s.%s", dir, service, level);
|
||||||
retval = exists(conf);
|
retval = exists(conf);
|
||||||
free(conf);
|
free(conf);
|
||||||
|
Loading…
Reference in New Issue
Block a user