diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | gobject/pygobject.h | 49 |
3 files changed, 32 insertions, 24 deletions
@@ -1,5 +1,9 @@ +=== 2.12.1 === 2006-09-04 Johan Dahlin <jdahlin@async.com.br> + * gobject/pygobject.h (_PYGOBJECT_H_): Corrected version check, + (Sebastian Dröge, #354364) + * configure.ac: Post release version bump === 2.12.0 === @@ -1,3 +1,6 @@ +2.12.1 4-september-2006 + - Corrected version check (Sebastian Dröge, #354364) + 2.12.0 4-september-2006 - Install the html files even when using --disable-docs (#353159, Johan, Matthias Clasen) diff --git a/gobject/pygobject.h b/gobject/pygobject.h index ce4ee00d..dadfe76b 100644 --- a/gobject/pygobject.h +++ b/gobject/pygobject.h @@ -293,30 +293,31 @@ struct _PyGObject_Functions *_PyGObject_API; } \ } G_STMT_END -#define init_pygobject_check(major, minor, micro) G_STMT_START { \ - init_pygobject(); \ - PyObject *gobject = PyImport_ImportModule("gobject"); \ - PyObject *mdict = PyModule_GetDict(gobject); \ - PyObject *version = PyDict_GetItemString(mdict, "pygobject_version"); \ - int found_major, found_minor, found_micro; \ - if (!version) \ - version = PyDict_GetItemString(mdict, "pygtk_version"); \ - if (!version) { \ - PyErr_SetString(PyExc_ImportError, \ - "PyGObject version too old"); \ - return; \ - } \ - if (!PyArg_ParseTuple(version, "iii", \ - &found_major, &found_minor, &found_micro)) \ - return; \ - if (major > found_major || minor > found_minor || \ - micro > found_micro) { \ - PyErr_Format(PyExc_ImportError, \ - "PyGObject version too old, %d.%d.%d is required, " \ - "found %d.%d.%d.", major, minor, micro, \ - found_major, found_minor, found_micro); \ - return; \ - } \ +#define init_pygobject_check(req_major, req_minor, req_micro) G_STMT_START { \ + init_pygobject(); \ + PyObject *gobject = PyImport_ImportModule("gobject"); \ + PyObject *mdict = PyModule_GetDict(gobject); \ + PyObject *version = PyDict_GetItemString(mdict, "pygobject_version"); \ + int found_major, found_minor, found_micro; \ + if (!version) \ + version = PyDict_GetItemString(mdict, "pygtk_version"); \ + if (!version) { \ + PyErr_SetString(PyExc_ImportError, \ + "PyGObject version too old"); \ + return; \ + } \ + if (!PyArg_ParseTuple(version, "iii", \ + &found_major, &found_minor, &found_micro)) \ + return; \ + if (req_major != found_major || \ + req_minor > found_minor || \ + req_minor == found_minor && req_micro > found_micro) { \ + PyErr_Format(PyExc_ImportError, \ + "PyGObject version mismatch, %d.%d.%d is required, " \ + "found %d.%d.%d.", req_major, req_minor, req_micro, \ + found_major, found_minor, found_micro); \ + return; \ + } \ } G_STMT_END #endif /* !_INSIDE_PYGOBJECT_ */ |