chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
list: make our list macros a bit easier to use by not requring type spec on each...
[elogind.git]
/
src
/
core
/
main.c
diff --git
a/src/core/main.c
b/src/core/main.c
index 72bd542af01a9a0978f1f6d99328f87425a96624..fe291f8410e0822c6580b1251e61884a8731a19b 100644
(file)
--- a/
src/core/main.c
+++ b/
src/core/main.c
@@
-1265,6
+1265,10
@@
int main(int argc, char *argv[]) {
log_show_color(isatty(STDERR_FILENO) > 0);
log_show_color(isatty(STDERR_FILENO) > 0);
+ /* Disable the umask logic */
+ if (getpid() == 1)
+ umask(0);
+
if (getpid() == 1 && detect_container(NULL) <= 0) {
/* Running outside of a container as PID 1 */
if (getpid() == 1 && detect_container(NULL) <= 0) {
/* Running outside of a container as PID 1 */
@@
-1438,14
+1442,10
@@
int main(int argc, char *argv[]) {
if (serialization)
assert_se(fdset_remove(fds, fileno(serialization)) >= 0);
if (serialization)
assert_se(fdset_remove(fds, fileno(serialization)) >= 0);
- if (arg_running_as == SYSTEMD_SYSTEM)
{
+ if (arg_running_as == SYSTEMD_SYSTEM)
/* Become a session leader if we aren't one yet. */
setsid();
/* Become a session leader if we aren't one yet. */
setsid();
- /* Disable the umask logic */
- umask(0);
- }
-
/* Move out of the way, so that we won't block unmounts */
assert_se(chdir("/") == 0);
/* Move out of the way, so that we won't block unmounts */
assert_se(chdir("/") == 0);
@@
-1567,6
+1567,7
@@
int main(int argc, char *argv[]) {
/* This will close all file descriptors that were opened, but
* not claimed by any unit. */
fdset_free(fds);
/* This will close all file descriptors that were opened, but
* not claimed by any unit. */
fdset_free(fds);
+ fds = NULL;
if (serialization) {
fclose(serialization);
if (serialization) {
fclose(serialization);