From 6fa8404c5cad710205e2cdb0f96b92a9810cafab Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Mon, 12 Nov 2012 02:59:56 -0600 Subject: Yet another attempt to get the fiddly patch file creation logic right. --- toys/posix/patch.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/toys/posix/patch.c b/toys/posix/patch.c index 5af07a14..40d7cbcf 100644 --- a/toys/posix/patch.c +++ b/toys/posix/patch.c @@ -387,7 +387,9 @@ void patch_main(void) // If we've got a file to open, do so. } else if (!(toys.optflags & FLAG_p) || i <= TT.prefix) { // If the old file was null, we're creating a new one. - if (!strcmp(oldname, "/dev/null") && !oldsum) { + if ((!strcmp(oldname, "/dev/null") || !oldsum) + && access(name, F_OK)) + { printf("creating %s\n", name); s = strrchr(name, '/'); if (s) { -- cgit v1.2.3