From: Heiko Voigt <hvoigt@hvoigt.net>
To: Johannes Sixt <j6t@kdbg.org>
Cc: Pat Thoyts <patthoyts@users.sourceforge.net>,
msysgit@googlegroups.com, git@vger.kernel.org,
Junio C Hamano <gitster@pobox.com>
Subject: [PATCH v3 1/8] mingw: move unlink wrapper to mingw.c
Date: Tue, 14 Dec 2010 23:09:49 +0100 [thread overview]
Message-ID: <20101214220948.GB4084@sandbox> (raw)
In-Reply-To: <20101214220604.GA4084@sandbox>
The next patch implements a workaround in case unlink fails on Windows.
Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
---
compat/mingw.c | 8 ++++++++
compat/mingw.h | 11 +++--------
2 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/compat/mingw.c b/compat/mingw.c
index bee6054..a7e1c6b 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -116,6 +116,14 @@ int err_win_to_posix(DWORD winerr)
return error;
}
+#undef unlink
+int mingw_unlink(const char *pathname)
+{
+ /* read-only files cannot be removed */
+ chmod(pathname, 0666);
+ return unlink(pathname);
+}
+
#undef open
int mingw_open (const char *filename, int oflags, ...)
{
diff --git a/compat/mingw.h b/compat/mingw.h
index 2283071..8316938 100644
--- a/compat/mingw.h
+++ b/compat/mingw.h
@@ -125,14 +125,6 @@ static inline int mingw_mkdir(const char *path, int mode)
}
#define mkdir mingw_mkdir
-static inline int mingw_unlink(const char *pathname)
-{
- /* read-only files cannot be removed */
- chmod(pathname, 0666);
- return unlink(pathname);
-}
-#define unlink mingw_unlink
-
#define WNOHANG 1
pid_t waitpid(pid_t pid, int *status, unsigned options);
@@ -180,6 +172,9 @@ int link(const char *oldpath, const char *newpath);
* replacements of existing functions
*/
+int mingw_unlink(const char *pathname);
+#define unlink mingw_unlink
+
int mingw_open (const char *filename, int oflags, ...);
#define open mingw_open
--
1.7.3.3.566.gf422f
next prev parent reply other threads:[~2010-12-14 22:10 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-14 22:06 [PATCH v3 0/5] make open/unlink failures user friendly on windows using retry/abort Heiko Voigt
2010-12-14 22:09 ` Heiko Voigt [this message]
2010-12-14 22:11 ` [PATCH v3 2/8] mingw: work around irregular failures of unlink on windows Heiko Voigt
2010-12-14 22:14 ` Erik Faye-Lund
2010-12-14 22:31 ` Heiko Voigt
2010-12-14 22:44 ` [PATCH v4 2/5] " Heiko Voigt
2010-12-14 22:21 ` [PATCH v3 3/8] mingw: make failures to unlink or move raise a question Heiko Voigt
2010-12-14 22:35 ` Erik Faye-Lund
2010-12-14 23:52 ` Junio C Hamano
2010-12-15 7:48 ` Heiko Voigt
2010-12-15 0:11 ` Johannes Schindelin
2010-12-15 3:05 ` Junio C Hamano
2010-12-15 7:28 ` Heiko Voigt
2010-12-15 9:09 ` Erik Faye-Lund
2010-12-15 7:36 ` Heiko Voigt
2010-12-14 22:25 ` [PATCH v3 4/5] mingw: add fallback for rmdir in case directory is in use Heiko Voigt
2010-12-14 22:28 ` [PATCH v3 5/5] mingw_rmdir: set errno=ENOTEMPTY when appropriate Heiko Voigt
2010-12-14 22:49 ` Erik Faye-Lund
2010-12-15 0:21 ` Johannes Schindelin
2010-12-15 15:52 ` [PATCH v3 0/5] make open/unlink failures user friendly on windows using retry/abort Erik Faye-Lund
2010-12-15 20:45 ` Junio C Hamano
2011-02-07 20:48 ` [PATCH v4 " Heiko Voigt
2011-02-07 20:49 ` [PATCH v4 1/5] mingw: move unlink wrapper to mingw.c Heiko Voigt
2011-02-17 23:18 ` Johannes Schindelin
2011-02-07 20:50 ` [PATCH v4 2/5] mingw: work around irregular failures of unlink on windows Heiko Voigt
2011-02-07 20:51 ` [PATCH v4 3/5] mingw: make failures to unlink or move raise a question Heiko Voigt
2011-02-07 20:52 ` [PATCH v4 4/5] mingw: add fallback for rmdir in case directory is in use Heiko Voigt
2011-02-07 20:54 ` [PATCH v4 5/5] mingw_rmdir: set errno=ENOTEMPTY when appropriate Heiko Voigt
2011-02-07 21:07 ` Erik Faye-Lund
2011-02-07 21:18 ` [msysGit] " Heiko Voigt
2011-02-07 21:23 ` Erik Faye-Lund
2011-02-07 21:54 ` Junio C Hamano
2011-02-07 21:57 ` Erik Faye-Lund
2011-02-08 4:34 ` [PATCH v4 0/5] make open/unlink failures user friendly on windows using retry/abort Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101214220948.GB4084@sandbox \
--to=hvoigt@hvoigt.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j6t@kdbg.org \
--cc=msysgit@googlegroups.com \
--cc=patthoyts@users.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.