]> git.eshelyaron.com Git - emacs.git/commitdiff
Emulate `readlink' for DJGPP versions before 2.04.
authorEli Zaretskii <eliz@gnu.org>
Sun, 27 Feb 2011 19:46:39 +0000 (21:46 +0200)
committerEli Zaretskii <eliz@gnu.org>
Sun, 27 Feb 2011 19:46:39 +0000 (21:46 +0200)
 src/msdos.c (readlink) [DJGPP < 2.04]: New stub function.
 src/msdos.h: (readlink) [DJGPP < 2.04]: Declare prototype.

src/ChangeLog
src/msdos.c
src/msdos.h

index b49b7a2d3f1a32c3d79cd477be2ce32df7304741..3288a79e9c63beeb04d64d67da44e1aaa0ff7a37 100644 (file)
@@ -1,3 +1,9 @@
+2011-02-27  Eli Zaretskii  <eliz@gnu.org>
+
+       * msdos.c (readlink) [DJGPP < 2.04]: New stub function.
+
+       * msdos.h: (readlink) [DJGPP < 2.04]: Declare prototype.
+
 2011-02-26  Eli Zaretskii  <eliz@gnu.org>
 
        * s/msdos.h (HAVE_LSTAT): Define for DJGPP >= 2.04.
index 8f0f6776aaaa0ac2aec09742f5907e9b96aed695..f6ac1d32b9b98d66621e36c41052cf6861bb5bfd 100644 (file)
@@ -3922,6 +3922,18 @@ croak (char *badfunc)
  */
 int setpgrp (void) {return 0; }
 int setpriority (int x, int y, int z) { return 0; }
+
+#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
+ssize_t
+readlink (const char *name, char *dummy1, size_t dummy2)
+{
+  /* `access' is much faster than `stat' on MS-DOS.  */
+  if (access (name, F_OK) == 0)
+    errno = EINVAL;
+  return -1;
+}
+#endif
+
 \f
 #if __DJGPP__ == 2 && __DJGPP_MINOR__ < 2
 
index 6b076c1722bed2d15014a712677e0c7f9bd570aa..4bbe9b134de33e00ee79d76dc613373a1d4df57e 100644 (file)
@@ -40,6 +40,11 @@ void mouse_init (void);
 void mouse_on (void);
 void mouse_off (void);
 void mouse_moveto (int, int);
+
+#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
+int readlink (const char *, char *, size_t);
+#endif
+
 \f
 #ifndef HAVE_X_WINDOWS
 /* Dummy types.  */