install-reloc: Support multi-binary installation.
[gnulib.git] / lib / ptsname_r.c
index 1d0ba82..5b345f3 100644 (file)
@@ -1,5 +1,5 @@
 /* Determine name of the slave side of a pseudo-terminal.
-   Copyright (C) 1998, 2002, 2010-2012 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2002, 2010-2013 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -138,7 +138,7 @@ __ptsname_r (int fd, char *buf, size_t buflen)
     ret = ioctl (fd, ISPTM, NULL);
     dev = ret;
 # endif
-    if (dev < 0)
+    if (ret < 0)
       {
         errno = ENOTTY;
         return errno;
@@ -177,7 +177,8 @@ __ptsname_r (int fd, char *buf, size_t buflen)
       return errno;
     }
 
-  buf[sizeof (_PATH_DEV) - 1] = 't';
+  if (strncmp(buf, "/dev/pts/", strlen("/dev/pts/")) != 0)
+    buf[sizeof (_PATH_DEV) - 1] = 't';
 #endif
 
   if (__stat (buf, &st) < 0)