You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by rh...@apache.org on 2014/10/09 13:15:51 UTC

svn commit: r1630369 - in /subversion/trunk/subversion: svn/util.c svnlook/svnlook.c

Author: rhuijben
Date: Thu Oct  9 11:15:51 2014
New Revision: 1630369

URL: http://svn.apache.org/r1630369
Log:
In svnlook and svn, pass the right error code as apr error when fputs fails.

* subversion/svn/util.c
  (svn_cl__error_checked_fputs):
* subversion/svnlook/svnlook.c
  (do_plist): Wrap errno in the way apr expects it, to allow translating back
    to an error message.

Modified:
    subversion/trunk/subversion/svn/util.c
    subversion/trunk/subversion/svnlook/svnlook.c

Modified: subversion/trunk/subversion/svn/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/util.c?rev=1630369&r1=1630368&r2=1630369&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/util.c (original)
+++ subversion/trunk/subversion/svn/util.c Thu Oct  9 11:15:51 2014
@@ -560,8 +560,8 @@ svn_cl__error_checked_fputs(const char *
 
   if (fputs(string, stream) == EOF)
     {
-      if (errno)
-        return svn_error_wrap_apr(errno, _("Write error"));
+      if (apr_get_os_error()) /* is errno on POSIX */
+        return svn_error_wrap_apr(apr_get_os_error(), _("Write error"));
       else
         return svn_error_create(SVN_ERR_IO_WRITE_ERROR, NULL, NULL);
     }

Modified: subversion/trunk/subversion/svnlook/svnlook.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnlook/svnlook.c?rev=1630369&r1=1630368&r2=1630369&view=diff
==============================================================================
--- subversion/trunk/subversion/svnlook/svnlook.c (original)
+++ subversion/trunk/subversion/svnlook/svnlook.c Thu Oct  9 11:15:51 2014
@@ -2018,10 +2018,11 @@ do_plist(svnlook_ctxt_t *c,
       /* "</properties>" */
       svn_xml_make_close_tag(&sb, pool, "properties");
 
+      errno = 0;
       if (fputs(sb->data, stdout) == EOF)
         {
-          if (errno)
-            return svn_error_wrap_apr(errno, _("Write error"));
+          if (apr_get_os_error()) /* is errno on POSIX */
+            return svn_error_wrap_apr(apr_get_os_error(), _("Write error"));
           else
             return svn_error_create(SVN_ERR_IO_WRITE_ERROR, NULL, NULL);
         }