[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r107271: Further GnuTLS EAGAIN write
From: |
Lars Ingebrigtsen |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r107271: Further GnuTLS EAGAIN write fixups |
Date: |
Mon, 13 Feb 2012 20:37:48 +0100 |
User-agent: |
Bazaar (2.3.1) |
------------------------------------------------------------
revno: 107271
committer: Lars Ingebrigtsen <address@hidden>
branch nick: trunk
timestamp: Mon 2012-02-13 20:37:48 +0100
message:
Further GnuTLS EAGAIN write fixups
* gnutls.c (emacs_gnutls_write): Set errno appropriately for
send_process.
modified:
src/ChangeLog
src/gnutls.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2012-02-13 15:55:27 +0000
+++ b/src/ChangeLog 2012-02-13 19:37:48 +0000
@@ -1,3 +1,8 @@
+2012-02-13 Lars Ingebrigtsen <address@hidden>
+
+ * gnutls.c (emacs_gnutls_write): Set errno appropriately for
+ send_process.
+
2012-02-13 Stefan Monnier <address@hidden>
* keymap.c (Fsingle_key_description): Handle char ranges.
=== modified file 'src/gnutls.c'
--- a/src/gnutls.c 2012-02-11 17:06:14 +0000
+++ b/src/gnutls.c 2012-02-13 19:37:48 +0000
@@ -365,8 +365,20 @@
{
if (rtnval == GNUTLS_E_INTERRUPTED)
continue;
- else
+ else {
+ /* If we get EAGAIN, then set errno appropriately so that
+ send_process retries the correct way instead of
+ erroring out. */
+ if (rtnval == EAGAIN) {
+#ifdef EWOULDBLOCK
+ errno = EWOULDBLOCK;
+#endif
+#ifdef EAGAIN
+ errno = EAGAIN;
+#endif
+ }
break;
+ }
}
buf += rtnval;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r107271: Further GnuTLS EAGAIN write fixups,
Lars Ingebrigtsen <=