install: compat fix for mode of created files.

By Mat Hostetter (mhostetter AT tilera.com)

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2009-06-15 18:13:51 +02:00
parent 9517d8ad72
commit 1f363a0867

View File

@ -129,7 +129,7 @@ int install_main(int argc, char **argv)
if (opts & OPT_PRESERVE_TIME) { if (opts & OPT_PRESERVE_TIME) {
copy_flags |= FILEUTILS_PRESERVE_STATUS; copy_flags |= FILEUTILS_PRESERVE_STATUS;
} }
mode = 0666; mode = 0755; /* GNU coreutils 6.10 compat */
if (opts & OPT_MODE) if (opts & OPT_MODE)
bb_parse_mode(mode_str, &mode); bb_parse_mode(mode_str, &mode);
uid = (opts & OPT_OWNER) ? get_ug_id(uid_str, xuname2uid) : getuid(); uid = (opts & OPT_OWNER) ? get_ug_id(uid_str, xuname2uid) : getuid();
@ -175,8 +175,9 @@ int install_main(int argc, char **argv)
} }
} }
/* Set the file mode */ /* Set the file mode (always, not only with -m).
if ((opts & OPT_MODE) && chmod(dest, mode) == -1) { * GNU coreutils 6.10 is not affected by umask. */
if (chmod(dest, mode) == -1) {
bb_perror_msg("can't change %s of %s", "permissions", dest); bb_perror_msg("can't change %s of %s", "permissions", dest);
ret = EXIT_FAILURE; ret = EXIT_FAILURE;
} }