[Python-checkins] r78642 - in python/branches/py3k: Misc/NEWS Modules/_lsprof.c

victor.stinner python-checkins at python.org
Thu Mar 4 01:29:24 CET 2010


Author: victor.stinner
Date: Thu Mar  4 01:29:24 2010
New Revision: 78642

Log:
Merged revisions 78641 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78641 | victor.stinner | 2010-03-04 01:10:12 +0100 (jeu., 04 mars 2010) | 3 lines
  
  Issue #7494: fix a crash in _lsprof (cProfile) after clearing the profiler,
  reset also the pointer to the current pointer context.
........


Modified:
   python/branches/py3k/   (props changed)
   python/branches/py3k/Misc/NEWS
   python/branches/py3k/Modules/_lsprof.c

Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS	(original)
+++ python/branches/py3k/Misc/NEWS	Thu Mar  4 01:29:24 2010
@@ -268,6 +268,9 @@
 Library
 -------
 
+- Issue #7494: fix a crash in _lsprof (cProfile) after clearing the profiler,
+  reset also the pointer to the current pointer context.
+
 - Issue #7232: Add support for the context manager protocol to the TarFile
   class.
 

Modified: python/branches/py3k/Modules/_lsprof.c
==============================================================================
--- python/branches/py3k/Modules/_lsprof.c	(original)
+++ python/branches/py3k/Modules/_lsprof.c	Thu Mar  4 01:29:24 2010
@@ -303,12 +303,17 @@
 {
 	RotatingTree_Enum(pObj->profilerEntries, freeEntry, NULL);
 	pObj->profilerEntries = EMPTY_ROTATING_TREE;
-	/* release the memory hold by the free list of ProfilerContexts */
+	/* release the memory hold by the ProfilerContexts */
+	if (pObj->currentProfilerContext) {
+		free(pObj->currentProfilerContext);
+		pObj->currentProfilerContext = NULL;
+	}
 	while (pObj->freelistProfilerContext) {
 		ProfilerContext *c = pObj->freelistProfilerContext;
 		pObj->freelistProfilerContext = c->previous;
 		free(c);
 	}
+	pObj->freelistProfilerContext = NULL;
 }
 
 static void


More information about the Python-checkins mailing list