aboutsummaryrefslogtreecommitdiff
path: root/network/irssi-python/abi18.diff
diff options
context:
space:
mode:
Diffstat (limited to 'network/irssi-python/abi18.diff')
-rw-r--r--network/irssi-python/abi18.diff59
1 files changed, 59 insertions, 0 deletions
diff --git a/network/irssi-python/abi18.diff b/network/irssi-python/abi18.diff
new file mode 100644
index 000000000000..624838277117
--- /dev/null
+++ b/network/irssi-python/abi18.diff
@@ -0,0 +1,59 @@
+diff --git a/configure.ac b/configure.ac
+index e2b630d..c962091 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2,7 +2,7 @@
+ # Process this file with autoconf to produce a configure script.
+
+ #AC_PREREQ(2.59)
+-AC_INIT([irssi-python], [test3], [loafier@gmail.com])
++AC_INIT([irssi-python], [test5], [loafier@gmail.com])
+ AC_CONFIG_SRCDIR([src/pycore.c])
+ AC_CONFIG_HEADER([pyirssi-config.h])
+ AC_CONFIG_MACRO_DIR([m4])
+diff --git a/src/objects/rawlog-object.c b/src/objects/rawlog-object.c
+index c872850..c5fa869 100644
+--- a/src/objects/rawlog-object.c
++++ b/src/objects/rawlog-object.c
+@@ -24,6 +24,10 @@
+ #include "rawlog-object.h"
+ #include "pycore.h"
+
++#if defined(IRSSI_ABI_VERSION) && IRSSI_ABI_VERSION >= 18
++#define RAWLOG18
++#endif
++
+ /* monitor "????" signal */
+ static void rawlog_cleanup(RAWLOG_REC *ban)
+ {
+@@ -64,7 +68,13 @@ PyDoc_STRVAR(PyRawlog_nlines_doc,
+ static PyObject *PyRawlog_nlines_get(PyRawlog *self, void *closure)
+ {
+ RET_NULL_IF_INVALID(self->data);
+- return PyInt_FromLong(self->data->nlines);
++ return PyInt_FromLong(
++#ifdef RAWLOG18
++ self->data->lines->length
++#else
++ self->data->nlines
++#endif
++ );
+ }
+
+ /* specialized getters/setters */
+@@ -93,7 +103,14 @@ static PyObject *PyRawlog_get_lines(PyRawlog *self, PyObject *args)
+ if (!lines)
+ return NULL;
+
+- for (node = self->data->lines; node; node = node->next)
++ for (node =
++#ifdef RAWLOG18
++ self->data->lines->head
++#else
++ self->data->lines
++#endif
++ ;
++ node; node = node->next)
+ {
+ int ret;
+ PyObject *line = PyString_FromString(node->data);