<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,7 +2,7 @@
 Check if we manage retainCounts correctly.
 &quot;&quot;&quot;
 from PyObjCTools.TestSupport import *
-import objc
+import objc, gc
 from objc.test.fnd import *
 
 LeaksDel = 0
@@ -102,6 +102,7 @@ class TestRetains(TestCase):
         self.assertEquals(LeaksDel, 0)
         del o
         del pool
+        gc.collect()
         self.assertEquals(LeaksDel, 1)
 
 </diff>
      <filename>pyobjc/pyobjc-core/Lib/objc/test/test_leaks.py</filename>
    </modified>
    <modified>
      <diff>@@ -319,10 +319,7 @@ PyObjCErr_ToObjCWithGILState(PyGILState_STATE* state)
 	if (state) {
 		PyGILState_Release(*state);
 	}
-	@throw exc;
-#if 0
 	[exc raise];
-#endif
 }
 
 
@@ -764,7 +761,7 @@ PyObjC_PythonToCArray(
 	/* A more complex array */
 
 #if PY_VERSION_HEX &gt;= 0x02060000
-	if (PyObject_CheckBuffer(obj)) {
+	if (PyObject_CheckBuffer(pythonList)) {
 		/* An object that implements the new-style buffer interface.
 		 * Use the buffer interface description to check if the buffer
 		 * type is compatible with what we expect.</diff>
      <filename>pyobjc/pyobjc-core/Modules/objc/objc_util.m</filename>
    </modified>
    <modified>
      <diff>@@ -756,6 +756,12 @@ handle_cftype(xmlNode* cur_node, PyObject* globalDict, PyObject* cftypes)
 	if (tollfree != NULL) {
 		Class cls = objc_lookUpClass(tollfree);
 		if (cls == NULL) {
+			if (tollfree[0] == '_' &amp;&amp; tollfree[1] == '_') {
+				cls = objc_lookUpClass(tollfree+2);
+			}
+		}
+
+		if (cls == NULL) {
 			retval = 0;
 			goto end;
 		}</diff>
      <filename>pyobjc/pyobjc-core/Modules/objc/parsexml.m</filename>
    </modified>
    <modified>
      <diff>@@ -19,6 +19,41 @@
 #include &quot;Python.h&quot;
 #include &lt;objc/objc.h&gt;
 
+#import &lt;Foundation/NSObjCRuntime.h&gt;
+
+#ifndef CGFLOAT_DEFINED
+
+#ifdef __LP64__
+# error &quot;Huh? 64-bit but no CFFloat available???&quot;
+#endif
+
+typedef float CGFloat;
+#define CGFLOAT_MIN FLT_MIN
+#define CGFLOAT_MAX FLT_MAX
+#define CGFLOAT_IS_DOUBLE 0
+#define CGFLOAT_DEFINED
+
+#endif /* CGFLOAT_DEFINED */
+
+
+#ifndef NSINTEGER_DEFINED
+
+#ifdef __LP64__
+# error &quot;Huh? 64-bit but no NSINTEGER available???&quot;
+#endif
+
+typedef int NSInteger;
+typedef unsigned int NSUInteger;
+
+#define NSIntegerMax    LONG_MAX
+#define NSIntegerMin    LONG_MIN
+#define NSUIntegerMax   ULONG_MAX
+
+#define NSINTEGER_DEFINED
+
+#endif
+
+
 #ifndef PyObjC_COMPAT_H
 #if (PY_VERSION_HEX &lt; 0x02050000)
 typedef int Py_ssize_t;</diff>
      <filename>pyobjc/pyobjc-core/Modules/objc/pyobjc-api.h</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,42 @@
 #ifndef PyObjC_COMPAT_H
 #define PyObjC_COMPAT_H
 
+#import &lt;Foundation/NSObjCRuntime.h&gt;
+
+
+#ifndef CGFLOAT_DEFINED
+
+#ifdef __LP64__
+# error &quot;Huh? 64-bit but no CFFloat available???&quot;
+#endif
+
+typedef float CGFloat;
+#define CGFLOAT_MIN FLT_MIN
+#define CGFLOAT_MAX FLT_MAX
+#define CGFLOAT_IS_DOUBLE 0
+#define CGFLOAT_DEFINED
+
+#endif /* CGFLOAT_DEFINED */
+
+
+#ifndef NSINTEGER_DEFINED
+
+#ifdef __LP64__
+# error &quot;Huh? 64-bit but no NSINTEGER available???&quot;
+#endif
+
+typedef int NSInteger;
+typedef unsigned int NSUInteger;
+
+#define NSIntegerMax    LONG_MAX
+#define NSIntegerMin    LONG_MIN
+#define NSUIntegerMax   ULONG_MAX
+
+#define NSINTEGER_DEFINED
+
+#endif
+
+
 /* 
  * Compatibilty definitions 
  */
@@ -67,29 +103,4 @@ typedef int Py_ssize_t;
 #endif
 
 
-/* NSInteger and friends are available on Leopard and later, define them here
- * for compatibility with earlier versions.
- *
- * Note that the guard definition is the same as used by Leopard itself.
- */
-#import &lt;Foundation/NSObjCRuntime.h&gt;
-
-#ifndef NSINTEGER_DEFINED
-
-#ifdef __LP64__
-# error &quot;Huh? 64-bit but no NSINTEGER available???&quot;
-#endif
-
-typedef int NSInteger;
-typedef unsigned int NSUInteger;
-
-#define NSIntegerMax    LONG_MAX
-#define NSIntegerMin    LONG_MIN
-#define NSUIntegerMax   ULONG_MAX
-
-#define NSINTEGER_DEFINED
-
-#endif
-
-
 #endif /* PyObjC_COMPAT_H */</diff>
      <filename>pyobjc/pyobjc-core/Modules/objc/pyobjc-compat.h</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>ed054874185c235e1106f2a7cf4556c3e53bc085</id>
    </parent>
  </parents>
  <author>
    <name>ronaldoussoren</name>
    <email>ronaldoussoren@f55f28a5-9edb-0310-a011-a803cfcd5d25</email>
  </author>
  <url>http://github.com/orestis/pyobjc/commit/a11f1c450e1ec1a467af20ce211d0e3ca49bb080</url>
  <id>a11f1c450e1ec1a467af20ce211d0e3ca49bb080</id>
  <committed-date>2009-05-14T01:34:37-07:00</committed-date>
  <authored-date>2009-05-14T01:34:37-07:00</authored-date>
  <message>* Small patches to enable building on 10.4.

This is not perfect, I get a number of failures in a full test run (but 
annoyingly the same tests pass when I run them seperately).



git-svn-id: http://svn.red-bean.com/pyobjc/trunk@2216 f55f28a5-9edb-0310-a011-a803cfcd5d25</message>
  <tree>95da177083c082781314dba849cb6bb59cd71fa4</tree>
  <committer>
    <name>ronaldoussoren</name>
    <email>ronaldoussoren@f55f28a5-9edb-0310-a011-a803cfcd5d25</email>
  </committer>
</commit>
