git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Duy Nguyen <pclouds@gmail.com>
To: git@vger.kernel.org
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Subject: Re: [PATCH 00/41] Add and use error_errno() and warning_errno()
Date: Sun, 1 May 2016 18:21:24 +0700	[thread overview]
Message-ID: <20160501112124.GA8748@lanh> (raw)
In-Reply-To: <1462101297-8610-1-git-send-email-pclouds@gmail.com>

On Sun, May 01, 2016 at 06:14:16PM +0700, Nguyễn Thái Ngọc Duy wrote:
> This is a spinoff from my worktree-move topic. This series adds
> die_errno() companions, error_errno() and warning_errno(), and use them
> where applicable to reduce the amount of typing (in future).

I had this patch in the series but excluded it before sending because
there is something wrong about it.

The patch shows two code blocks that follow the same pattern:
closesocket() then print an error with strerror(). The second block
suggests that closesocket() can change errno. But if that's true, the
first block should do the same.

Which is right? Fix the first block to save errno, or drop the saving
in the second block?

diff --git a/compat/mingw.c b/compat/mingw.c
index 0413d5c..b6de02c 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -1555,8 +1555,7 @@ int mingw_socket(int domain, int type, int protocol)
 	/* convert into a file descriptor */
 	if ((sockfd = _open_osfhandle(s, O_RDWR|O_BINARY)) < 0) {
 		closesocket(s);
-		return error("unable to make a socket file descriptor: %s",
-			strerror(errno));
+		return error_errno("unable to make a socket file descriptor");
 	}
 	return sockfd;
 }
@@ -1606,10 +1605,8 @@ int mingw_accept(int sockfd1, struct sockaddr *sa, socklen_t *sz)
 
 	/* convert into a file descriptor */
 	if ((sockfd2 = _open_osfhandle(s2, O_RDWR|O_BINARY)) < 0) {
-		int err = errno;
 		closesocket(s2);
-		return error("unable to make a socket file descriptor: %s",
-			strerror(err));
+		return error_errno("unable to make a socket file descriptor");
 	}
 	return sockfd2;
 }
-- 
2.8.0.rc0.210.gd302cd2

  parent reply	other threads:[~2016-05-01 11:21 UTC|newest]

Thread overview: 145+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-01 11:14 [PATCH 00/41] Add and use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 01/41] usage.c: move format processing out of die_errno() Nguyễn Thái Ngọc Duy
2016-05-01 18:23   ` Eric Sunshine
2016-05-02 18:26     ` Junio C Hamano
2016-05-03  4:45       ` Jeff King
2016-05-03  9:39         ` Duy Nguyen
2016-05-03 10:15           ` Jeff King
2016-05-01 11:14 ` [PATCH 02/41] usage.c: add warning_errno() and error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 03/41] bisect.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 04/41] builtin/am.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 05/41] builtin/branch.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 06/41] builtin/fetch.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 07/41] builtin/help.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 08/41] builtin/mailsplit.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 18:31   ` Eric Sunshine
2016-05-01 11:14 ` [PATCH 09/41] builtin/merge-file.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 10/41] builtin/pack-objects.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 11/41] builtin/rm.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 12/41] builtin/update-index.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 18:40   ` Eric Sunshine
2016-05-02  8:47     ` Duy Nguyen
2016-05-01 11:14 ` [PATCH 13/41] builtin/upload-archive.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 14/41] builtin/worktree.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 15/41] check-racy.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 16/41] combine-diff.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 17/41] compat/win32/syslog.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 18:40   ` Eric Sunshine
2016-05-01 11:14 ` [PATCH 18/41] config.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 19/41] connected.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 20/41] copy.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 21/41] credential-cache--daemon.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 22/41] diff-no-index.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 23/41] editor.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 24/41] entry.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 25/41] fast-import.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 26/41] gpg-interface.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 27/41] grep.c: " Nguyễn Thái Ngọc Duy
2016-05-01 18:46   ` Eric Sunshine
2016-05-01 11:14 ` [PATCH 28/41] http.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 29/41] ident.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 30/41] mailmap.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 31/41] reachable.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 32/41] rerere.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 33/41] run-command.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 34/41] sequencer.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 35/41] server-info.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 36/41] sha1_file.c: use {error,die,warning}_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 37/41] transport-helper.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 38/41] unpack-trees.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 39/41] upload-pack.c: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 40/41] vcs-svn: " Nguyễn Thái Ngọc Duy
2016-05-01 11:14 ` [PATCH 41/41] wrapper.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-01 11:21 ` Duy Nguyen [this message]
2016-05-03 12:03 ` [PATCH v2 00/41] Add and use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 01/41] usage.c: move format processing out of die_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 02/41] usage.c: add warning_errno() and error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 03/41] bisect.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 04/41] builtin/am.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 05/41] builtin/branch.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 06/41] builtin/fetch.c: " Nguyễn Thái Ngọc Duy
2016-05-03 19:22     ` Junio C Hamano
2016-05-03 12:03   ` [PATCH v2 07/41] builtin/help.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 08/41] builtin/mailsplit.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 19:48     ` Junio C Hamano
2016-05-03 12:03   ` [PATCH v2 09/41] builtin/merge-file.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 10/41] builtin/pack-objects.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 19:54     ` Junio C Hamano
2016-05-03 12:03   ` [PATCH v2 11/41] builtin/rm.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 19:58     ` Junio C Hamano
2016-05-03 12:03   ` [PATCH v2 12/41] builtin/update-index.c: prefer "err" to "errno" in process_lstat_error Nguyễn Thái Ngọc Duy
2016-05-03 16:52     ` Eric Sunshine
2016-05-03 12:03   ` [PATCH v2 13/41] builtin/upload-archive.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 14/41] builtin/worktree.c: " Nguyễn Thái Ngọc Duy
2016-05-03 20:02     ` Junio C Hamano
2016-05-03 12:03   ` [PATCH v2 15/41] check-racy.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 16/41] combine-diff.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 17/41] compat/win32/syslog.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 18/41] config.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 19/41] connected.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 20/41] copy.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 21/41] credential-cache--daemon.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 22/41] diff-no-index.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 23/41] editor.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 24/41] entry.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 25/41] fast-import.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:03   ` [PATCH v2 26/41] gpg-interface.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 27/41] grep.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 28/41] http.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 29/41] ident.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 30/41] mailmap.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 31/41] reachable.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 32/41] rerere.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 33/41] run-command.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 34/41] sequencer.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 35/41] server-info.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 36/41] sha1_file.c: use {error,die,warning}_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 37/41] transport-helper.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 38/41] unpack-trees.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 39/41] upload-pack.c: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 40/41] vcs-svn: " Nguyễn Thái Ngọc Duy
2016-05-03 12:04   ` [PATCH v2 41/41] wrapper.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-03 16:55   ` [PATCH v2 00/41] Add and use error_errno() and warning_errno() Eric Sunshine
2016-05-03 20:11   ` Junio C Hamano
2016-05-08  9:47   ` [PATCH v3 " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 01/41] usage.c: move format processing out of die_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 02/41] usage.c: add warning_errno() and error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 03/41] bisect.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 04/41] builtin/am.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 05/41] builtin/branch.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 06/41] builtin/fetch.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 07/41] builtin/help.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 08/41] builtin/mailsplit.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 09/41] builtin/merge-file.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 10/41] builtin/pack-objects.c: use die_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 11/41] builtin/rm.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 12/41] builtin/update-index.c: prefer "err" to "errno" in process_lstat_error Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 13/41] builtin/upload-archive.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 14/41] builtin/worktree.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 15/41] check-racy.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 16/41] combine-diff.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 17/41] compat/win32/syslog.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 18/41] config.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 19/41] connected.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 20/41] copy.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 21/41] credential-cache--daemon.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 22/41] diff-no-index.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 23/41] editor.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 24/41] entry.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 25/41] fast-import.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 26/41] gpg-interface.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 27/41] grep.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 28/41] http.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 29/41] ident.c: use warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 30/41] mailmap.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 31/41] reachable.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 32/41] rerere.c: use error_errno() and warning_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 33/41] run-command.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 34/41] sequencer.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 35/41] server-info.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 36/41] sha1_file.c: use {error,die,warning}_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 37/41] transport-helper.c: use error_errno() Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 38/41] unpack-trees.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:47     ` [PATCH v3 39/41] upload-pack.c: " Nguyễn Thái Ngọc Duy
2016-05-08  9:48     ` [PATCH v3 40/41] vcs-svn: " Nguyễn Thái Ngọc Duy
2016-05-08  9:48     ` [PATCH v3 41/41] wrapper.c: use warning_errno() Nguyễn Thái Ngọc Duy

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160501112124.GA8748@lanh \
    --to=pclouds@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).