Data of type Point is passed by value, not by reference.
diff --git a/Mac/Modules/ctl/Ctlmodule.c b/Mac/Modules/ctl/Ctlmodule.c
index 12e5809..991b567 100644
--- a/Mac/Modules/ctl/Ctlmodule.c
+++ b/Mac/Modules/ctl/Ctlmodule.c
@@ -2059,7 +2059,7 @@
 	short c_rv = -1;
 
 	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, &where);
+	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, where);
 	rv = callcallback(ctl_obj, kControlUserPaneHitTestProcTag, arglist);
 	Py_XDECREF(arglist);
 	/* Ignore errors, nothing we can do about them */
@@ -2078,7 +2078,7 @@
 
 	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
 	/* We cannot pass the actionProc without lots of work */
-	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, &startPt);
+	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, startPt);
 	rv = callcallback(ctl_obj, kControlUserPaneTrackingProcTag, arglist);
 	Py_XDECREF(arglist);
 	if ( rv )