mirror of
https://github.com/troglobit/finit.git
synced 2026-10-23 11:44:37 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c371c10455 | ||
|
|
a23e152f6b | ||
|
|
9210f2851e | ||
|
|
617609cbc5 | ||
|
|
b022916758 | ||
|
|
9a357b7aab |
No files matched your search
@@ -4,6 +4,7 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- 'dev'
|
- 'dev'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
env:
|
env:
|
||||||
PROJECT_NAME: finit
|
PROJECT_NAME: finit
|
||||||
|
|||||||
+2
-1
@@ -4,7 +4,7 @@ Change Log
|
|||||||
All relevant changes are documented in this file.
|
All relevant changes are documented in this file.
|
||||||
|
|
||||||
|
|
||||||
[4.10][] - 2025-02-23
|
[4.10][] - 2025-02-28
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
### Changes
|
### Changes
|
||||||
@@ -17,6 +17,7 @@ All relevant changes are documented in this file.
|
|||||||
- Fix #427: using an external getty with custom login program cause
|
- Fix #427: using an external getty with custom login program cause
|
||||||
Finit to use login program as the getty command
|
Finit to use login program as the getty command
|
||||||
- Fix #428: allow `sysctl` path to be set at build time
|
- Fix #428: allow `sysctl` path to be set at build time
|
||||||
|
- Fix #429: regression in v4.9 causing Finit to segfault at shutdown
|
||||||
- Fix possible memory leak when sourcing a service `env:file`
|
- Fix possible memory leak when sourcing a service `env:file`
|
||||||
- Finit now waits until all `post:scripts` have run before returning
|
- Finit now waits until all `post:scripts` have run before returning
|
||||||
OK to `initctl <reload|runlevel>`. This also applies to the new
|
OK to `initctl <reload|runlevel>`. This also applies to the new
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
AC_INIT([Finit], [4.10-rc1], [https://github.com/troglobit/finit/issues],
|
AC_INIT([Finit], [4.10-rc2], [https://github.com/troglobit/finit/issues],
|
||||||
[finit], [https://troglobit.com/projects/finit/])
|
[finit], [https://troglobit.com/projects/finit/])
|
||||||
AC_CONFIG_AUX_DIR(aux)
|
AC_CONFIG_AUX_DIR(aux)
|
||||||
AM_INIT_AUTOMAKE([1.11 foreign dist-xz subdir-objects])
|
AM_INIT_AUTOMAKE([1.11 foreign dist-xz subdir-objects])
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 410 KiB After Width: | Height: | Size: 320 KiB |
@@ -338,6 +338,7 @@ PLUGIN_INIT(plugin_init)
|
|||||||
|
|
||||||
PLUGIN_EXIT(plugin_exit)
|
PLUGIN_EXIT(plugin_exit)
|
||||||
{
|
{
|
||||||
|
uev_timer_stop(&rtc_timer);
|
||||||
plugin_unregister(&plugin);
|
plugin_unregister(&plugin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+13
-10
@@ -1675,6 +1675,7 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file)
|
|||||||
if (tty_parse_args(&tty, cmd, &args))
|
if (tty_parse_args(&tty, cmd, &args))
|
||||||
return errno;
|
return errno;
|
||||||
|
|
||||||
|
/* NOTE: this may result in dev == NULL! */
|
||||||
if (tty_isatcon(tty.dev))
|
if (tty_isatcon(tty.dev))
|
||||||
dev = tty_atcon();
|
dev = tty_atcon();
|
||||||
else
|
else
|
||||||
@@ -1707,17 +1708,19 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file)
|
|||||||
respawn = 1;
|
respawn = 1;
|
||||||
|
|
||||||
/* Create name:id tuple for identity, e.g., tty:S0 */
|
/* Create name:id tuple for identity, e.g., tty:S0 */
|
||||||
ptr = strrchr(dev, '/');
|
if (dev) {
|
||||||
if (ptr)
|
ptr = strrchr(dev, '/');
|
||||||
ptr++;
|
if (ptr)
|
||||||
else
|
ptr++;
|
||||||
ptr = dev;
|
else
|
||||||
if (!strncmp(ptr, "tty", 3))
|
ptr = dev;
|
||||||
ptr += 3;
|
if (!strncmp(ptr, "tty", 3))
|
||||||
|
ptr += 3;
|
||||||
|
|
||||||
name = "tty";
|
name = "tty";
|
||||||
if (!id || id[0] == 0)
|
if (!id || id[0] == 0)
|
||||||
id = ptr;
|
id = ptr;
|
||||||
|
}
|
||||||
|
|
||||||
svc = svc_find_by_tty(dev);
|
svc = svc_find_by_tty(dev);
|
||||||
} else
|
} else
|
||||||
|
|||||||
@@ -232,6 +232,8 @@ void do_iterate_proc(int (*cb)(int, void *), void *data)
|
|||||||
dbg("Skipping %s ...", file);
|
dbg("Skipping %s ...", file);
|
||||||
else if (file[0] == '@')
|
else if (file[0] == '@')
|
||||||
dbg("Skipping %s ...", &file[1]);
|
dbg("Skipping %s ...", &file[1]);
|
||||||
|
else if (strstr(file, "initctl"))
|
||||||
|
dbg("Skipping %s ...", file);
|
||||||
else
|
else
|
||||||
if (cb(pid, data)) {
|
if (cb(pid, data)) {
|
||||||
dbg("PID %d is still alive (%s)", pid, file);
|
dbg("PID %d is still alive (%s)", pid, file);
|
||||||
|
|||||||
Reference in new issue
Block a user