Subject: bug#17337: epg-wait-for-status hangs forever

From: Eli Zaretskii <[email-masked]>
Date: Tue, 13 May 2014 20:23:44 +0300

> Date: Thu, 24 Apr 2014 21:33:25 -0400
> From: Richard Stallman <[email-masked]>
> 
> Yesterday I updated from the trunk and rebuilt.
> epa-mail-encrypt and rmail-epa-decrypt now do not terminate.
> I got the backtrace below from typing C-g at the latter.
> 
> I verified that the call to epg-wait-for-status never returns.
> It displays `Decrypting...done', but seems to keep waiting.
> 
> I went back to the old Emacs executable from March 19, made from the
> trunk fetched on March 18, and aliased function-put to put.  It worked
> ok: with the same compiled Lisp files, the hang does not happen.

AFAIU, you are saying that Lisp files from Apr 23 trunk work fine with
the Emacs binary built from C sources fetched on Mar 18, is that
right?

If so, I don't think I see changes to C sources during that period
which could explain such a bug.  May I suggest to take a look at the
changes done during this period, and perhaps experiment with reverting
changes that look suspicious?  Below are some bzr commands which will
allow you to review the changes at several levels of granularity:

This command will show a list of all the files that were changed
between these two dates:

  bzr st -r date:2014-03-18..date:2014-04-24

This command will show the changes made in a single file between these
2 dates (src/process.c as an example):

  bzr diff -r date:2014-03-18..date:2014-04-24 src/process.c

This command will show all the changes made in the C sources between
these 2 dates:

  bzr diff -r date:2014-03-18..date:2014-04-24 src

If you try changing some file, and later want to undo those changes,
you can do that by saying "bzr revert FILE".  Just "bzr revert" will
undo changes in all the files.

Or maybe the problem is triggered by one of the pre-loaded Lisp files?
In that case, another thing to try is use C sources from Mar 18, but
pre-loaded Lisp files from Apr 24.