classification
Title: memory leak in tkinter
Type: resource usage Stage: resolved
Components: Versions: Python 3.2, Python 3.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: jcea, jll, python-dev
Priority: normal Keywords: patch

Created on 2012-07-19 14:35 by jll, last changed 2012-07-19 19:31 by jll. This issue is now closed.

Files
File name Uploaded Description Edit
tkinter.patch jll, 2012-07-19 14:35 patch for tkinter.c review
Messages (4)
msg165842 - (view) Author: Julia Lawall (jll) * Date: 2012-07-19 14:35
In the file Modules/_tkinter.c, in the function PyInit__tkinter, m should be decrefed on the PyType_Ready error path.
msg165859 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2012-07-19 19:19
New changeset b584c58c2286 by Jesus Cea in branch '3.2':
Closes #15396: memory leak in tkinter
http://hg.python.org/cpython/rev/b584c58c2286

New changeset b2dac78db1c9 by Jesus Cea in branch 'default':
MERGE: Closes #15396: memory leak in tkinter
http://hg.python.org/cpython/rev/b2dac78db1c9
msg165861 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2012-07-19 19:20
Thanks for the patch, Julia, and for submitting the contributor form. I have added you too to the "Doc/ACKS.txt" file.

I wonder how you found this...
msg165866 - (view) Author: Julia Lawall (jll) * Date: 2012-07-19 19:31
On Thu, 19 Jul 2012, Jesús Cea Avión wrote:

>
> Jesús Cea Avión <jcea@jcea.es> added the comment:
>
> Thanks for the patch, Julia, and for submitting the contributor form. I have added you too to the "Doc/ACKS.txt" file.
>
> I wonder how you found this...

My PhD student Suman Saha has developed a tool that finds faults in error 
handling code by checking whether the error handling code within a 
function is self-consistent.  So if one failure branch frees x, and the 
next one does not, there is a problem, unless x was freed along the way.

A preliminary description of the work is in the following paper:

S. Saha, Julia L. Lawall, G. Muller : “Finding Resource-Release Omission 
Faults in Linux”, 6th Workshop on Programming Languages and Operating 
Systems, Cascais, Portugal (2011)

http://pagesperso-systeme.lip6.fr/Suman.Saha/src/plos11.pdf

That paper just has results for Linux, but we are working on applying it 
to other software, including python.

julia
History
Date User Action Args
2012-07-19 19:31:57jllsetmessages: + msg165866
2012-07-19 19:23:05jceasetresolution: fixed
stage: resolved
2012-07-19 19:22:34jceasetstatus: open -> closed
versions: + Python 3.3
2012-07-19 19:20:58jceasetstatus: closed -> open

nosy: + jcea
messages: + msg165861

resolution: fixed -> (no value)
stage: resolved -> (no value)
2012-07-19 19:19:09python-devsetstatus: open -> closed

nosy: + python-dev
messages: + msg165859

resolution: fixed
stage: resolved
2012-07-19 14:35:26jllcreate