Author: emaste
Date: Sat Sep 15 02:58:02 2012
New Revision: 240529
URL: http://svn.freebsd.org/changeset/base/240529

Log:
  MFC r240412:
  
    According to a clarification at http://austingroupbugs.net/view.php?id=503
    ptsname may set errno, so avoid saving and restoring errno across the
    function.
  
  PR: standards/171572

Modified:
  stable/9/lib/libc/stdlib/ptsname.3
  stable/9/lib/libc/stdlib/ptsname.c
Directory Properties:
  stable/9/lib/libc/   (props changed)

Modified: stable/9/lib/libc/stdlib/ptsname.3
==============================================================================
--- stable/9/lib/libc/stdlib/ptsname.3  Sat Sep 15 02:52:19 2012        
(r240528)
+++ stable/9/lib/libc/stdlib/ptsname.3  Sat Sep 15 02:58:02 2012        
(r240529)
@@ -102,7 +102,8 @@ of the slave device on success; otherwis
 pointer is returned.
 .Sh ERRORS
 The
-.Fn grantpt
+.Fn grantpt ,
+.Fn ptsname
 and
 .Fn unlockpt
 functions may fail and set

Modified: stable/9/lib/libc/stdlib/ptsname.c
==============================================================================
--- stable/9/lib/libc/stdlib/ptsname.c  Sat Sep 15 02:52:19 2012        
(r240528)
+++ stable/9/lib/libc/stdlib/ptsname.c  Sat Sep 15 02:58:02 2012        
(r240529)
@@ -77,7 +77,6 @@ ptsname(int fildes)
 {
        static char pt_slave[sizeof _PATH_DEV + SPECNAMELEN] = _PATH_DEV;
        char *ret = NULL;
-       int sverrno = errno;
 
        /* Make sure fildes points to a master device. */
        if (__isptmaster(fildes) != 0)
@@ -87,7 +86,6 @@ ptsname(int fildes)
            sizeof pt_slave - (sizeof _PATH_DEV - 1)) != NULL)
                ret = pt_slave;
 
-done:  /* Make sure ptsname() does not overwrite errno. */
-       errno = sverrno;
+done:
        return (ret);
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to