From: "Rémi Denis-Courmont" <remi@remlab.net> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Subject: Re: [FFmpeg-devel] [PATCH v4 3/5] avformat/network: add ff_neterror2() for cases where we already have an error Date: Thu, 16 May 2024 13:42:23 +0300 Message-ID: <91C9E49E-1EE3-4B37-AEF7-1A0D78481633@remlab.net> (raw) In-Reply-To: <20240516093403.3763258-4-ffmpeg-devel@pileofstuff.org> Le 16 mai 2024 12:33:36 GMT+03:00, Andrew Sayers <ffmpeg-devel@pileofstuff.org> a écrit : >For example, WSAStartup()'s documentation says: > > "A call to the WSAGetLastError function is not needed and should not be used" >--- > libavformat/network.c | 5 ++++- > libavformat/network.h | 12 ++++++++++++ > 2 files changed, 16 insertions(+), 1 deletion(-) > >diff --git a/libavformat/network.c b/libavformat/network.c >index 5d0d05c5f1..351dc34bb6 100644 >--- a/libavformat/network.c >+++ b/libavformat/network.c >@@ -123,7 +123,10 @@ void ff_network_close(void) > #if HAVE_WINSOCK2_H > int ff_neterror(void) > { >- int err = WSAGetLastError(); >+ return ff_neterror2(WSAGetLastError()); >+} >+int ff_neterror2(int err) Err, please. Keep this to the Windows back-end. Nothing good is going to happen with a function that does nothing (on other platforms) and has a nondescript numbered name. >+{ > switch (err) { > case WSAEWOULDBLOCK: > return AVERROR(EAGAIN); >diff --git a/libavformat/network.h b/libavformat/network.h >index f338694212..7c8f81a050 100644 >--- a/libavformat/network.h >+++ b/libavformat/network.h >@@ -63,6 +63,12 @@ > * @note Error is based on WSAGetLastError() (Windows) or `errno` (otherwise) > */ > int ff_neterror(void); >+/* >+ * @brief ff_neterror()-style AVERROR >+ * @param err error code (usually an errno or Windows Sockets Error Code) >+ * @note Windows Sockets Error Codes are only supported in Windows >+ */ >+int ff_neterror2(int err); > #else > #include <sys/types.h> > #include <sys/socket.h> >@@ -76,6 +82,12 @@ int ff_neterror(void); > * @note Error is based on WSAGetLastError() (Windows) or `errno` (otherwise) > */ > #define ff_neterror() AVERROR(errno) >+/* >+ * @brief ff_neterror()-style AVERROR >+ * @param err error code (usually an errno or Windows Sockets Error Code) >+ * @note Windows Sockets Error Codes are only supported in Windows >+ */ >+#define ff_neterror2(ERRNO) AVERROR(ERRNO) > #endif /* HAVE_WINSOCK2_H */ > > #if HAVE_ARPA_INET_H _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2024-05-16 10:42 UTC|newest] Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-04-19 16:59 [FFmpeg-devel] [PATCH 1/2] avformat/utils: handle errors > 0 in avformat_network_init() Andrew Sayers 2024-04-19 16:59 ` [FFmpeg-devel] [PATCH 2/2] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers 2024-04-19 17:04 ` [FFmpeg-devel] [PATCH 1/2] avformat/utils: handle errors > 0 in avformat_network_init() James Almer 2024-04-19 17:23 ` [FFmpeg-devel] [PATCH v2 1/2] avformat/network: Return a proper negative error code from ff_network_init() Andrew Sayers 2024-04-19 17:23 ` [FFmpeg-devel] [PATCH v2 2/2] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers 2024-04-19 17:37 ` [FFmpeg-devel] [PATCH v2 1/2] avformat/network: Return a proper negative error code from ff_network_init() James Almer 2024-04-19 19:07 ` [FFmpeg-devel] [PATCH v3 1/3] avformat/network: add ff_neterrno2() for cases where we already have an errno Andrew Sayers 2024-04-19 19:08 ` [FFmpeg-devel] [PATCH v3 2/3] avformat/network: Return 0/AVERROR from ff_network_init() Andrew Sayers 2024-04-19 19:08 ` [FFmpeg-devel] [PATCH v3 3/3] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers 2024-04-20 7:57 ` [FFmpeg-devel] [PATCH v3 1/3] avformat/network: add ff_neterrno2() for cases where we already have an errno Stefano Sabatini 2024-04-20 13:24 ` [FFmpeg-devel] [PATCH v4 " Andrew Sayers 2024-04-20 13:25 ` [FFmpeg-devel] [PATCH v4 2/3] avformat/network: Return 0/AVERROR from ff_network_init() Andrew Sayers 2024-05-05 20:05 ` Marton Balint 2024-05-07 13:12 ` Andrew Sayers 2024-04-20 13:25 ` [FFmpeg-devel] [PATCH v4 3/3] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers 2024-04-27 8:46 ` [FFmpeg-devel] [PATCH v4 1/3] avformat/network: add ff_neterrno2() for cases where we already have an errno Andrew Sayers 2024-05-05 19:59 ` [FFmpeg-devel] [PATCH v3 " Marton Balint 2024-05-07 13:41 ` Andrew Sayers 2024-05-07 21:05 ` Marton Balint 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 0/5] avformat/network: improve ff_neterrno() Andrew Sayers 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 1/5] Add documentation for ff_neterrno() Andrew Sayers 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 2/5] Rename "ff_neterrno()" to "ff_neterror()" Andrew Sayers 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 3/5] avformat/network: add ff_neterror2() for cases where we already have an error Andrew Sayers 2024-05-16 10:42 ` Rémi Denis-Courmont [this message] 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 0/6] avformat/network: improve ff_neterrno() Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 1/6] Add documentation for ff_neterrno() Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 2/6] Rename "ff_neterrno()" to "ff_neterror()" Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 3/6] avformat/network: add ff_neterror2() for cases that don't use WSAGetLastError Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 4/6] avformat/network: add ff_neterror2() for compatibility with Windows Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 5/6] avformat/network: Return 0/AVERROR from ff_network_init() Andrew Sayers 2024-05-16 11:59 ` [FFmpeg-devel] [PATCH v5 6/6] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers 2024-05-31 9:07 ` [FFmpeg-devel] [PATCH v5 0/6] avformat/network: improve ff_neterrno() Andrew Sayers 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 4/5] avformat/network: Return 0/AVERROR from ff_network_init() Andrew Sayers 2024-05-16 9:33 ` [FFmpeg-devel] [PATCH v4 5/5] avformat/avformat: Document return codes for av_format_(de)init Andrew Sayers
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 * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=91C9E49E-1EE3-4B37-AEF7-1A0D78481633@remlab.net \ --to=remi@remlab.net \ --cc=ffmpeg-devel@ffmpeg.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
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git