Index: trunk/src/sh_gpg.c
===================================================================
--- trunk/src/sh_gpg.c	(revision 388)
+++ trunk/src/sh_gpg.c	(revision 391)
@@ -860,4 +860,5 @@
   if (ferror(source.pipe) && errno == EAGAIN) 
     {
+      retry_msleep(0,10); /* sleep 10 ms to avoid starving the gpg child writing to the pipe */
       clearerr(source.pipe);
       goto xagain;
@@ -938,4 +939,5 @@
   if (ferror(source.pipe) && errno == EAGAIN) 
     {
+      retry_msleep(0,10); /* sleep 10 ms to avoid starving the gpg child writing to the pipe */
       clearerr(source.pipe);
       goto yagain;
