Package: emacs;
Reported by: Uday S Reddy <u.s.reddy <at> cs.bham.ac.uk>
Date: Sat, 10 Apr 2010 21:25:02 UTC
Severity: normal
Tags: fixed
Fixed in version 24.1
Done: Lars Magne Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Uday S Reddy <u.s.reddy <at> cs.bham.ac.uk> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: Uday S Reddy <u.s.reddy <at> cs.bham.ac.uk>, 5924 <at> debbugs.gnu.org Subject: bug#5924: 23.1; accept-process-output switching current-buffer Date: Thu, 20 May 2010 10:50:28 +0100
[Message part 1 (text/plain, inline)]
Stefan Monnier writes: > I've just installed a change in the Emacs Bzr trunk so that the > current-buffer is preserved when running the Elisp code of process > filters and sentinels. If you can try this code (or try the patch > below) to see if it fixes your problem, it would be helpful. Hi Stephan, Sorry for the delay in getting back to you. I have now compiled and tried the latest bzr version (revno 100368). But, it seems to that the problem persists. Here is my current proxy for accept-process-output: (defsubst vm-accept-process-output (process) "Accept output from PROCESS. The variable `vm-imap-server-timeout' specifies how many seconds to wait before timing out. If a timeout occurs, typically VM cannot proceed." ;; protect against possible buffer change due to bug in Emacs (let ((buf (current-buffer)) (got-output (accept-process-output process vm-imap-server-timeout))) (if got-output (when (not (equal (current-buffer) buf)) (if (string-lessp "24" emacs-version) ;; the Emacs bug should have been fixed (message "Emacs process output error: Buffer changed to %s" (current-buffer))) ;; recover from the bug (set-buffer buf)) (vm-imap-protocol-error "No response from the IMAP server")))) and the error came up pretty much the first time I tried it: Emacs process output error: Buffer changed to saved IMAP mailhost.c 10:31:09 The current-buffer should have been "IMAP mailhost.c 10:31.40". But it switched to the "IMAP mailhost.c 10:31:09" (call it the "old buffer") because its process sent some output. I am attaching the contents of the old buffer. I think the last line would have been output while the current accept-process-output was done. (Note that this line came in a few seconds after the current process got started.) So, there appears to be some deeper problem than originally thought. Cheers, Uday 3RhcnRpbmcgSU1BUCBzZXNzaW9uIFRodSBNYXkgMjAgMTA6MzE6MDkgMjAxMA0KY29ubmVjdGlu ZyB0byBtYWlsaG9zdC5jcy5iaGFtLmFjLnVrOjE0Mw0KY29ubmVjdGVkIGZvciBmZXRjaA0KKiBP SyBJTUFQNCBSZWFkeSBpbWFwIDAwMDFjZGYzDQ0KVk0gQ0FQQUJJTElUWQ0NCiogQ0FQQUJJTElU WSBJTUFQNCBJTUFQNFJFVjENDQpWTSBPSyBDQVBBQklMSVRZDQ0KVk0gTE9HSU4gPHBhcmFtZXRl cnMgb21pdHRlZD4NDQpWTSBPSyBMb2dnZWQgaW4uDQ0KVk0gU0VMRUNUICJJTkJPWCINDQoqIEZM QUdTIChcQW5zd2VyZWQgXEZsYWdnZWQgXERlbGV0ZWQgXFNlZW4gXERyYWZ0IGZvcndhcmRlZCBm aWxlZCByZWRpc3RyaWJ1dGVkICEgJEZvcndhcmRlZCA3MzUwIDczNTQgNzM5MSBzaWduZWQgKiBh Y2NlcHQgYWN0aW9uIHBsYWdpYXJpc20gSnVuayBOb25KdW5rICFAKQ0NCiogT0sgW1BFUk1BTkVO VEZMQUdTIChcQW5zd2VyZWQgXEZsYWdnZWQgXERlbGV0ZWQgXFNlZW4gXERyYWZ0IGZvcndhcmRl ZCBmaWxlZCByZWRpc3RyaWJ1dGVkICEgJEZvcndhcmRlZCA3MzUwIDczNTQgNzM5MSBzaWduZWQg KiBhY2NlcHQgYWN0aW9uIHBsYWdpYXJpc20gSnVuayBOb25KdW5rICFAIFwqKV0gRmxhZ3MgcGVy bWl0dGVkLg0NCiogMjY0OCBFWElTVFMNDQoqIDAgUkVDRU5UDQ0KKiBPSyBbVUlEVkFMSURJVFkg MTIxNzI0MzE0Nl0gVUlEcyB2YWxpZA0NCiogT0sgW1VJRE5FWFQgMjY2MDBdIFByZWRpY3RlZCBu ZXh0IFVJRA0NClZNIE9LIFtSRUFELVdSSVRFXSBTZWxlY3QgY29tcGxldGVkLg0NClZNIFVJRCBG RVRDSCAyNjQ3MToyNjQ3MSAoUkZDODIyLlNJWkUpDQ0KKiAyNTk0IEZFVENIIChSRkM4MjIuU0la RSA1ODE3NSBVSUQgMjY0NzEpDQ0KVk0gT0sgRmV0Y2ggY29tcGxldGVkLg0NClZNIFVJRCBGRVRD SCAyNjQ3MToyNjQ3MSAoQk9EWS5QRUVLW10pDQ0KKiAyNTk0IEZFVENIIChVSUQgMjY0NzEgQk9E WVtdIHs1ODE3NX0NDQopDQ0KVk0gT0sgRmV0Y2ggY29tcGxldGVkLg0NClZNIE5PT1ANDQpWTSBP SyBOT09QIGNvbXBsZXRlZC4NDQpWTSBVSUQgRkVUQ0ggMjY1ODI6MjY1ODIgKFJGQzgyMi5TSVpF KQ0NCiogMjYzOCBGRVRDSCAoUkZDODIyLlNJWkUgMjE4MSBVSUQgMjY1ODIpDQ0KVk0gT0sgRmV0 Y2ggY29tcGxldGVkLg0NClZNIFVJRCBGRVRDSCAyNjU4MjoyNjU4MiAoQk9EWS5QRUVLW10pDQ0K KiAyNjM4IEZFVENIIChVSUQgMjY1ODIgQk9EWVtdIHsyMTgxfQ0NCikNDQpWTSBPSyBGZXRjaCBj b21wbGV0ZWQuDQ0KVk0gTk9PUA0NClZNIE9LIE5PT1AgY29tcGxldGVkLg0NClZNIFVJRCBGRVRD SCAyNjQ3MToyNjQ3MSAoUkZDODIyLlNJWkUpDQ0KKiAyNTk0IEZFVENIIChSRkM4MjIuU0laRSA1 ODE3NSBVSUQgMjY0NzEpDQ0KVk0gT 0sgRmV0Y2ggY29tcGxldGVkLg0NClZNIFVJRCBGRVRDSCAy NjQ3MToyNjQ3MSAoQk9EWS5QRUVLW10pDQ0KKiAyNTk0IEZFVENIIChVSUQgMjY0NzEgQk9EWVtd IHs1ODE3NX0NDQopDQ0KVk0gT0sgRmV0Y2ggY29tcGxldGVkLg0NClZNIE5PT1ANDQpWTSBPSyBO T09QIGNvbXBsZXRlZC4NDQpWTSBVSUQgRkVUQ0ggMjY1Nzg6MjY1NzggKFJGQzgyMi5TSVpFKQ0N CiogMjYzNSBGRVRDSCAoUkZDODIyLlNJWkUgNTIzODggVUlEIDI2NTc4KQ0NClZNIE9LIEZldGNo IGNvbXBsZXRlZC4NDQpWTSBVSUQgRkVUQ0ggMjY1Nzg6MjY1NzggKEJPRFkuUEVFS1tdKQ0NCiog MjYzNSBGRVRDSCAoVUlEIDI2NTc4IEJPRFlbXSB7NTIzODh9DQ0KKQ0NClZNIE9LIEZldGNoIGNv bXBsZXRlZC4NDQpWTSBMT0dPVVQNDQoqIEJZRSBMb2dnaW5nIG91dA0NClZNIE9LIExvZ291dCBj b21wbGV0ZWQuDQ0KDQpQcm9jZXNzIElNQVA8Mj4gY29ubmVjdGlvbiBicm9rZW4gYnkgcmVtb3Rl IHBlZXINCmVuZGluZyBJTUFQIHNlc3Npb24gVGh1IE1heSAyMCAxMDozMTo0MyAyMDEw
[saved-IMAP-buffer.txt (text/plain, inline)]
starting IMAP session Thu May 20 10:31:09 2010 connecting to mailhost.cs.bham.ac.uk:143 connected for fetch * OK IMAP4 Ready imap 0001cdf3 VM CAPABILITY * CAPABILITY IMAP4 IMAP4REV1 VM OK CAPABILITY VM LOGIN <parameters omitted> VM OK Logged in. VM SELECT "INBOX" * FLAGS (\Answered \Flagged \Deleted \Seen \Draft forwarded filed redistributed ! $Forwarded 7350 7354 7391 signed * accept action plagiarism Junk NonJunk !@) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft forwarded filed redistributed ! $Forwarded 7350 7354 7391 signed * accept action plagiarism Junk NonJunk !@ \*)] Flags permitted. * 2648 EXISTS * 0 RECENT * OK [UIDVALIDITY 1217243146] UIDs valid * OK [UIDNEXT 26600] Predicted next UID VM OK [READ-WRITE] Select completed. VM UID FETCH 26471:26471 (RFC822.SIZE) * 2594 FETCH (RFC822.SIZE 58175 UID 26471) VM OK Fetch completed. VM UID FETCH 26471:26471 (BODY.PEEK[]) * 2594 FETCH (UID 26471 BODY[] {58175} ) VM OK Fetch completed. VM NOOP VM OK NOOP completed. VM UID FETCH 26582:26582 (RFC822.SIZE) * 2638 FETCH (RFC822.SIZE 2181 UID 26582) VM OK Fetch completed. VM UID FETCH 26582:26582 (BODY.PEEK[]) * 2638 FETCH (UID 26582 BODY[] {2181} ) VM OK Fetch completed. VM NOOP VM OK NOOP completed. VM UID FETCH 26471:26471 (RFC822.SIZE) * 2594 FETCH (RFC822.SIZE 58175 UID 26471) VM OK Fetch completed. VM UID FETCH 26471:26471 (BODY.PEEK[]) * 2594 FETCH (UID 26471 BODY[] {58175} ) VM OK Fetch completed. VM NOOP VM OK NOOP completed. VM UID FETCH 26578:26578 (RFC822.SIZE) * 2635 FETCH (RFC822.SIZE 52388 UID 26578) VM OK Fetch completed. VM UID FETCH 26578:26578 (BODY.PEEK[]) * 2635 FETCH (UID 26578 BODY[] {52388} ) VM OK Fetch completed. VM LOGOUT * BYE Logging out VM OK Logout completed. Process IMAP<2> connection broken by remote peer ending IMAP session Thu May 20 10:31:43 2010
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.