summaryrefslogtreecommitdiffstats
path: root/gobject/gobjectmodule.c
diff options
context:
space:
mode:
authorJohan Dahlin <johan@gnome.org>2008-07-27 09:49:13 +0000
committerJohan Dahlin <johan@src.gnome.org>2008-07-27 09:49:13 +0000
commit2c9df6000e93158e14cf279e0cf3ee19acad11d0 (patch)
treec9f963f53f9ab9e3f9ed6ef743d32441e0aaf956 /gobject/gobjectmodule.c
parent37fe32b72d4b2530aaf28bd343c424898e45ab2c (diff)
downloadpygobject-2c9df6000e93158e14cf279e0cf3ee19acad11d0.tar.gz
pygobject-2c9df6000e93158e14cf279e0cf3ee19acad11d0.tar.xz
pygobject-2c9df6000e93158e14cf279e0cf3ee19acad11d0.zip
Add a Py_TYPE macro for accessing ob_type.
2008-07-27 Johan Dahlin <johan@gnome.org> * glib/pyglib-python-compat.h: Add a Py_TYPE macro for accessing ob_type. * glib/glibmodule.c (pyglib_register_constants): * gobject/gobjectmodule.c (pygobject__g_instance_init), (pyg_integer_richcompare): * gobject/pygenum.c (pyg_enum_repr), (pyg_enum_from_gtype), (pyg_enum_add), (pyg_enum_get_value_name), (pyg_enum_get_value_nick): * gobject/pygflags.c (pyg_flags_repr), (pyg_flags_from_gtype), (pyg_flags_add), (pyg_flags_and), (pyg_flags_or), (pyg_flags_xor), (pyg_flags_get_first_value_name), (pyg_flags_get_first_value_nick), (pyg_flags_get_value_names), (pyg_flags_get_value_nicks): Use Py_TYPE and PyLong macros to access struct fields svn path=/trunk/; revision=885
Diffstat (limited to 'gobject/gobjectmodule.c')
-rw-r--r--gobject/gobjectmodule.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/gobject/gobjectmodule.c b/gobject/gobjectmodule.c
index 0ec1382..7fb9154 100644
--- a/gobject/gobjectmodule.c
+++ b/gobject/gobjectmodule.c
@@ -1045,7 +1045,7 @@ pygobject__g_instance_init(GTypeInstance *instance,
wrapper = pygobject_new_full(object, FALSE, g_class);
args = PyTuple_New(0);
kwargs = PyDict_New();
- if (wrapper->ob_type->tp_init(wrapper, args, kwargs))
+ if (Py_TYPE(wrapper)->tp_init(wrapper, args, kwargs))
PyErr_Print();
Py_DECREF(args);
Py_DECREF(kwargs);
@@ -2306,7 +2306,6 @@ pyg_set_object_has_new_constructor(GType type)
g_type_set_qdata(type, pygobject_has_updated_constructor_key, GINT_TO_POINTER(1));
}
-#define GET_INT(x) (((_PyLongObject*)x)->ob_ival)
PyObject *
pyg_integer_richcompare(PyObject *v, PyObject *w, int op)
{
@@ -2314,12 +2313,12 @@ pyg_integer_richcompare(PyObject *v, PyObject *w, int op)
gboolean t;
switch (op) {
- case Py_EQ: t = GET_INT(v) == GET_INT(w); break;
- case Py_NE: t = GET_INT(v) != GET_INT(w); break;
- case Py_LE: t = GET_INT(v) <= GET_INT(w); break;
- case Py_GE: t = GET_INT(v) >= GET_INT(w); break;
- case Py_LT: t = GET_INT(v) < GET_INT(w); break;
- case Py_GT: t = GET_INT(v) > GET_INT(w); break;
+ case Py_EQ: t = _PyLong_AS_LONG(v) == _PyLong_AS_LONG(w); break;
+ case Py_NE: t = _PyLong_AS_LONG(v) != _PyLong_AS_LONG(w); break;
+ case Py_LE: t = _PyLong_AS_LONG(v) <= _PyLong_AS_LONG(w); break;
+ case Py_GE: t = _PyLong_AS_LONG(v) >= _PyLong_AS_LONG(w); break;
+ case Py_LT: t = _PyLong_AS_LONG(v) < _PyLong_AS_LONG(w); break;
+ case Py_GT: t = _PyLong_AS_LONG(v) > _PyLong_AS_LONG(w); break;
default: g_assert_not_reached();
}
@@ -2327,7 +2326,6 @@ pyg_integer_richcompare(PyObject *v, PyObject *w, int op)
Py_INCREF(result);
return result;
}
-#undef GET_INT
static void
_log_func(const gchar *log_domain,