Added global runctx function to profile to fix SF Bug #716587
diff --git a/Lib/test/output/test_profile b/Lib/test/output/test_profile
index b36a016..917a18e 100644
--- a/Lib/test/output/test_profile
+++ b/Lib/test/output/test_profile
@@ -7,11 +7,11 @@
         1    0.000    0.000    1.000    1.000 <string>:1(?)
         0    0.000             0.000          profile:0(profiler)
         1    0.000    0.000    1.000    1.000 profile:0(testfunc())
-        1    0.400    0.400    1.000    1.000 test_profile.py:21(testfunc)
-        2    0.080    0.040    0.600    0.300 test_profile.py:30(helper)
-        4    0.116    0.029    0.120    0.030 test_profile.py:48(helper1)
-        8    0.312    0.039    0.400    0.050 test_profile.py:56(helper2)
-        8    0.064    0.008    0.080    0.010 test_profile.py:66(subhelper)
-       28    0.028    0.001    0.028    0.001 test_profile.py:78(__getattr__)
+        1    0.400    0.400    1.000    1.000 test_profile.py:23(testfunc)
+        2    0.080    0.040    0.600    0.300 test_profile.py:32(helper)
+        4    0.116    0.029    0.120    0.030 test_profile.py:50(helper1)
+        8    0.312    0.039    0.400    0.050 test_profile.py:58(helper2)
+        8    0.064    0.008    0.080    0.010 test_profile.py:68(subhelper)
+       28    0.028    0.001    0.028    0.001 test_profile.py:80(__getattr__)
 
 
diff --git a/Lib/test/test_profile.py b/Lib/test/test_profile.py
index 6ff5811..1b1f50b 100644
--- a/Lib/test/test_profile.py
+++ b/Lib/test/test_profile.py
@@ -1,6 +1,8 @@
 """Test suite for the profile module."""
 
 import profile
+import os
+from test.test_support import TESTFN, vereq
 
 # In order to have reproducible time, we simulate a timer in the global
 # variable 'ticks', which represents simulated time in milliseconds.
@@ -82,5 +84,17 @@
         ticks += 1
         raise AttributeError
 
+
+def test_2():
+        d = globals().copy()
+        def testfunc():
+            global x
+            x = 1
+        d['testfunc'] = testfunc
+        profile.runctx("testfunc()", d, d, TESTFN)
+        vereq (x, 1)
+        os.unlink (TESTFN)
+
 if __name__ == "__main__":
     test_main()
+    test_2()