This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author gvanrossum
Recipients Jack.Murray, giampaolo.rodola, gvanrossum, pitrou, vstinner, yselivanov
Date 2014-04-25.06:45:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1398408316.52.0.79628619584.issue21340@psf.upfronthosting.co.za>
In-reply-to
Content
Oh wait, it looks like the assert failed because KeyboardInterrupt hit right at that point. I ran the program a few times and when I hit ^C I get a traceback at a different point in the code each time. This is as expected. You must have hit the rare case where it hit right at the assert -- then the behavior I described can happen.

Anyway, I think this would fix it:

--- a/asyncio/tasks.py  Fri Apr 18 09:51:35 2014 -0700
+++ b/asyncio/tasks.py  Thu Apr 24 23:44:57 2014 -0700
@@ -76,7 +76,8 @@
         return self.gen.gi_code

     def __del__(self):
-        frame = self.gen.gi_frame
+        gen = getattr(self, 'gen', None)
+        frame = getattr(gen, 'gi_frame', None)
         if frame is not None and frame.f_lasti == -1:
             func = self.func
             code = func.__code__
History
Date User Action Args
2014-04-25 06:45:16gvanrossumsetrecipients: + gvanrossum, pitrou, vstinner, giampaolo.rodola, yselivanov, Jack.Murray
2014-04-25 06:45:16gvanrossumsetmessageid: <1398408316.52.0.79628619584.issue21340@psf.upfronthosting.co.za>
2014-04-25 06:45:16gvanrossumlinkissue21340 messages
2014-04-25 06:45:16gvanrossumcreate