[PyObjC-svn] r2223 - trunk/pyobjc/pyobjc-core/Modules/objc
[email protected] Thu, 14 May 2009 10:29:31 -0500
| Newsgroups | gmane.comp.python.pyobjc.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: ronaldoussoren
Date: Thu May 14 10:29:31 2009
New Revision: 2223
Log:
* Ensure clean compile with Python 2.6
* We still get one warning in unicode-object.m, due
to convoluted PyMem_ macro's.
Modified:
trunk/pyobjc/pyobjc-core/Modules/objc/ObjCPointer.m
trunk/pyobjc/pyobjc-core/Modules/objc/formal-protocol.m
trunk/pyobjc/pyobjc-core/Modules/objc/fsref.m
trunk/pyobjc/pyobjc-core/Modules/objc/fsspec.m
trunk/pyobjc/pyobjc-core/Modules/objc/function.m
trunk/pyobjc/pyobjc-core/Modules/objc/informal-protocol.m
trunk/pyobjc/pyobjc-core/Modules/objc/instance-var.m
trunk/pyobjc/pyobjc-core/Modules/objc/method-accessor.m
trunk/pyobjc/pyobjc-core/Modules/objc/method-imp.m
trunk/pyobjc/pyobjc-core/Modules/objc/method-signature.m
trunk/pyobjc/pyobjc-core/Modules/objc/objc-NULL.m
trunk/pyobjc/pyobjc-core/Modules/objc/objc-class.m
trunk/pyobjc/pyobjc-core/Modules/objc/objc-object.m
trunk/pyobjc/pyobjc-core/Modules/objc/objc_super.m
trunk/pyobjc/pyobjc-core/Modules/objc/selector.m
trunk/pyobjc/pyobjc-core/Modules/objc/struct-wrapper.m
trunk/pyobjc/pyobjc-core/Modules/objc/unicode-object.m
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/ObjCPointer.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/ObjCPointer.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/ObjCPointer.m Thu May 14 10:29:31 2009
@@ -125,7 +125,11 @@
0, /* tp_cache */
0, /* tp_subclasses */
0, /* tp_weaklist */
- 0, /* tp_del */
+ 0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObjCPointer *
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/formal-protocol.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/formal-protocol.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/formal-protocol.m Thu May 14 10:29:31 2009
@@ -506,6 +506,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/fsref.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/fsref.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/fsref.m Thu May 14 10:29:31 2009
@@ -193,6 +193,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/fsspec.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/fsspec.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/fsspec.m Thu May 14 10:29:31 2009
@@ -132,6 +132,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/function.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/function.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/function.m Thu May 14 10:29:31 2009
@@ -319,6 +319,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObject*
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/informal-protocol.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/informal-protocol.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/informal-protocol.m Thu May 14 10:29:31 2009
@@ -204,6 +204,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/instance-var.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/instance-var.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/instance-var.m Thu May 14 10:29:31 2009
@@ -165,8 +165,7 @@
var = self->ivar;
}
- NSString* ocName = [NSString stringWithUTF8String:self->name];
-
+ //NSString* ocName = [NSString stringWithUTF8String:self->name];
// [objc willChangeValueForKey:ocName];
if (self->isSlot) {
@@ -323,6 +322,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
/* Set the name of an ivar if it doesn't already have one
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/method-accessor.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/method-accessor.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/method-accessor.m Thu May 14 10:29:31 2009
@@ -418,6 +418,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObject* PyObjCMethodAccessor_New(PyObject* base, int class_method)
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/method-imp.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/method-imp.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/method-imp.m Thu May 14 10:29:31 2009
@@ -346,6 +346,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/method-signature.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/method-signature.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/method-signature.m Thu May 14 10:29:31 2009
@@ -91,6 +91,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/objc-NULL.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/objc-NULL.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/objc-NULL.m Thu May 14 10:29:31 2009
@@ -60,6 +60,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObject* PyObjCInitNULL(void)
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/objc-class.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/objc-class.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/objc-class.m Thu May 14 10:29:31 2009
@@ -46,6 +46,11 @@
NULL,
nsdata_getsegcount,
NULL
+#if PY_VERSION_HEX >= 0x02060000
+ , NULL
+ , NULL
+#endif
+
};
static PyBufferProcs nsmutabledata_as_buffer = {
@@ -53,6 +58,10 @@
nsmutabledata_getwritebuffer,
nsdata_getsegcount,
NULL
+#if PY_VERSION_HEX >= 0x02060000
+ , NULL
+ , NULL
+#endif
};
@@ -1159,6 +1168,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
char*
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/objc-object.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/objc-object.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/objc-object.m Thu May 14 10:29:31 2009
@@ -705,6 +705,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
(destructor)object_del /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
},
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
@@ -714,7 +718,11 @@
}, /* as_number */
{ 0, 0, 0 }, /* as_mapping */
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* as_sequence */
- { 0, 0, 0, 0 }, /* as_buffer */
+ { 0, 0, 0, 0
+#if PY_VERSION_HEX >= 0x02060000
+ , 0, 0
+#endif
+ }, /* as_buffer */
0, /* name */
0, /* slots */
}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/objc_super.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/objc_super.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/objc_super.m Thu May 14 10:29:31 2009
@@ -154,5 +154,9 @@
0, /* tp_cache */
0, /* tp_mro */
0, /* tp_weaklist */
- 0, /* tp_del */
+ 0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/selector.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/selector.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/selector.m Thu May 14 10:29:31 2009
@@ -457,6 +457,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
@@ -712,6 +716,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
@@ -1667,6 +1675,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
char* PyObjCSelector_Signature(PyObject* obj)
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/struct-wrapper.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/struct-wrapper.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/struct-wrapper.m Thu May 14 10:29:31 2009
@@ -871,6 +871,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObject*
Modified: trunk/pyobjc/pyobjc-core/Modules/objc/unicode-object.m
==============================================================================
--- trunk/pyobjc/pyobjc-core/Modules/objc/unicode-object.m (original)
+++ trunk/pyobjc/pyobjc-core/Modules/objc/unicode-object.m Thu May 14 10:29:31 2009
@@ -199,6 +199,10 @@
0, /* tp_subclasses */
0, /* tp_weaklist */
0 /* tp_del */
+#if PY_VERSION_HEX >= 0x02060000
+ , 0 /* tp_version_tag */
+#endif
+
};
PyObject*
@@ -227,8 +231,16 @@
// XXX - I don't know how to get gcc to let me use sizeof(unichar)
#ifdef PyObjC_UNICODE_FAST_PATH
Py_ssize_t length = [value length];
+
+ if (length < 0) {
+ PyErr_SetString(PyExc_SystemError, "string with negative length");
+ return NULL;
+ }
result = PyObject_New(PyObjCUnicodeObject, &PyObjCUnicode_Type);
- PyUnicode_AS_UNICODE(result) = PyMem_NEW(Py_UNICODE, length);
+ Py_UNICODE* tptr = PyMem_NEW(Py_UNICODE, length);
+ PyUnicode_AS_UNICODE(result) = tptr;
+ tptr = NULL;
+
if (PyUnicode_AS_UNICODE(result) == NULL) {
Py_DECREF((PyObject*)result);
PyErr_NoMemory();
------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image
processing features enabled. http://p.sf.net/sfu/kodak-com