gpgme/
authorMarcus Brinkmann <mb@g10code.com>
Thu, 2 Jun 2005 23:09:54 +0000 (23:09 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Thu, 2 Jun 2005 23:09:54 +0000 (23:09 +0000)
2005-06-03  Marcus Brinkmann  <marcus@g10code.de>

* wait-global.c (gpgme_wait): Break out of the fd processing loop
after an error.
Reported by Igor Belyi <gpgme@katehok.ac93.org>.

tests/
2005-06-03  Marcus Brinkmann  <marcus@g10code.de>

* gpg/Makefile.am (TESTS): Add t-wait.
* gpg/t-wait.c (main): New test.

gpgme/ChangeLog
gpgme/wait-global.c
tests/ChangeLog
tests/gpg/Makefile.am

index d949da7481a8b2607cd8426124fc1385ba9d3786..ccb53ffb6b22110940dc3640efd670c507829e98 100644 (file)
@@ -1,3 +1,9 @@
+2005-06-03  Marcus Brinkmann  <marcus@g10code.de>
+
+       * wait-global.c (gpgme_wait): Break out of the fd processing loop
+       after an error.
+       Reported by Igor Belyi <gpgme@katehok.ac93.org>.
+
 2005-06-02  Marcus Brinkmann  <marcus@g10code.de>
 
        * wait.h (_gpgme_run_io_cb): New prototype.
index 7895d8b4f541521a9d250bf59fc69c3e1db651ed..30b6cb04e145bfa0e1e9362aa5f68a2f5f37ee91 100644 (file)
@@ -322,6 +322,11 @@ gpgme_wait (gpgme_ctx_t ctx, gpgme_error_t *status, int hang)
                      _gpgme_io_close (ictx->fdt.fds[idx].fd);
                  _gpgme_engine_io_event (ictx->engine, GPGME_EVENT_DONE,
                                          &err);
+
+                 /* Break out of the loop, and retry the select()
+                    from scratch, because now all fds should be
+                    gone.  */
+                 break;
                }
            }
        }
index d7bc24244e2d6df1c3458ed01cb978461f3b5ac1..690e4585b82cdeff65dbd7c763087e15a7693951 100644 (file)
@@ -1,3 +1,8 @@
+2005-06-03  Marcus Brinkmann  <marcus@g10code.de>
+
+       * gpg/Makefile.am (TESTS): Add t-wait.
+       * gpg/t-wait.c (main): New test.
+
 2004-12-07  Marcus Brinkmann  <marcus@g10code.de>
 
        * gpg/mkdemodirs: Add copyright notice.
index ceda8698cc585c85269fadfebd8d9bb3484d2448..73009a98fb18a6f54b42a2e29c8fc12ee3a991b3 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright (C) 2000 Werner Koch (dd9jn)
-# Copyright (C) 2001, 2004 g10 Code GmbH
+# Copyright (C) 2001, 2004, 2005 g10 Code GmbH
 # 
 # This file is part of GPGME.
 # 
@@ -28,7 +28,7 @@ noinst_HEADERS = t-support.h
 TESTS = t-encrypt t-encrypt-sym t-encrypt-sign t-sign t-signers        \
        t-decrypt t-verify t-decrypt-verify \
        t-export t-import t-trustlist t-eventloop t-edit \
-       t-keylist t-keylist-sig t-thread1
+       t-keylist t-keylist-sig t-thread1 t-wait
 
 CLEANFILES = secring.gpg pubring.gpg trustdb.gpg
 DISTCLEANFILES = pubring.gpg~ random_seed