summaryrefslogtreecommitdiffstats
path: root/applypatch
diff options
context:
space:
mode:
authorNick Kralevich <nnk@google.com>2012-06-26 15:01:03 -0700
committerNick Kralevich <nnk@google.com>2012-06-26 15:01:03 -0700
commit956cde8578c40ec812a933a14cb4e82f2c0de320 (patch)
tree4b477b5b9db290ff41f2187a134bc6ecb3e74f61 /applypatch
parentea17e320b0bc4437e8a881026f296b71fa02ad3e (diff)
downloadbootable_recovery-956cde8578c40ec812a933a14cb4e82f2c0de320.zip
bootable_recovery-956cde8578c40ec812a933a14cb4e82f2c0de320.tar.gz
bootable_recovery-956cde8578c40ec812a933a14cb4e82f2c0de320.tar.bz2
Add mode when open(O_CREAT) is used.
When creating a new file using open(..., O_CREAT), it is an error to fail to specify a creation mode. If a mode is not specified, a random stack provided value is used as the "mode". This will become a compile error in a future Android change. Change-Id: I73c1e1a39ca36bf01704b07302af4971d234b5a8
Diffstat (limited to 'applypatch')
-rw-r--r--applypatch/applypatch.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/applypatch/applypatch.c b/applypatch/applypatch.c
index 00004e9..488fd8c 100644
--- a/applypatch/applypatch.c
+++ b/applypatch/applypatch.c
@@ -324,7 +324,7 @@ static int LoadPartitionContents(const char* filename, FileContents* file) {
// Save the contents of the given FileContents object under the given
// filename. Return 0 on success.
int SaveFileContents(const char* filename, const FileContents* file) {
- int fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC);
+ int fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
if (fd < 0) {
printf("failed to open \"%s\" for write: %s\n",
filename, strerror(errno));
@@ -843,7 +843,7 @@ static int GenerateTarget(FileContents* source_file,
strcpy(outname, target_filename);
strcat(outname, ".patch");
- output = open(outname, O_WRONLY | O_CREAT | O_TRUNC);
+ output = open(outname, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
if (output < 0) {
printf("failed to open output file %s: %s\n",
outname, strerror(errno));