homepage

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 ezio.melotti
Recipients ezio.melotti
Date 2011年05月10日.16:17:19
SpamBayes Score 1.2129051e-06
Marked as misclassified No
Message-id <1305044249.51.0.994959411456.issue12051@psf.upfronthosting.co.za>
In-reply-to
Content
Subclasses of JSONEncoder that use check_circular=False can segfault json:
>>> import json
>>> class EndlessJSONEncoder(json.JSONEncoder):
... def default(self, o):
... return [o]
... 
>>> EndlessJSONEncoder(check_circular=False).encode(5j)
Segmentation fault
The attached patch fixes it raising a "RuntimeError: maximum recursion depth exceeded".
There might be other ways to get a segfault, because there are other recursive calls involving more functions (i.e. a calls b, and b calls a) that are not covered by the patch.
History
Date User Action Args
2011年05月10日 16:17:29ezio.melottisetrecipients: + ezio.melotti
2011年05月10日 16:17:29ezio.melottisetmessageid: <1305044249.51.0.994959411456.issue12051@psf.upfronthosting.co.za>
2011年05月10日 16:17:19ezio.melottilinkissue12051 messages
2011年05月10日 16:17:19ezio.melotticreate

AltStyle によって変換されたページ (->オリジナル) /