diff options
Diffstat (limited to 'community/pyid3lib/pyid3lib-0.5.1-py25.patch')
-rw-r--r-- | community/pyid3lib/pyid3lib-0.5.1-py25.patch | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/community/pyid3lib/pyid3lib-0.5.1-py25.patch b/community/pyid3lib/pyid3lib-0.5.1-py25.patch new file mode 100644 index 000000000..c24cfc97d --- /dev/null +++ b/community/pyid3lib/pyid3lib-0.5.1-py25.patch @@ -0,0 +1,57 @@ +--- pyid3lib-0.5.1/pyid3lib.cc.orig 2007-08-08 23:53:08.000000000 +0300 ++++ pyid3lib-0.5.1/pyid3lib.cc 2007-08-08 23:53:12.000000000 +0300 +@@ -10,13 +10,19 @@ + #include <id3/id3lib_frame.h> + #include <id3/tag.h> + ++#if PY_VERSION_HEX < 0x02050000 && !defined(PY_SSIZE_T_MIN) ++typedef int Py_ssize_t; ++#define PY_SSIZE_T_MAX INT_MAX ++#define PY_SSIZE_T_MIN INT_MIN ++#endif ++ + typedef struct + { + PyObject_HEAD + + ID3_Tag* tag; + ID3_Frame** frames; +- int size, alloc; ++ Py_ssize_t size, alloc; + } ID3Object; + + typedef struct +@@ -80,13 +86,24 @@ + + + static PySequenceMethods tag_as_sequence = { ++#if PY_VERSION_HEX >= 0x02050000 ++ (lenfunc)id3_length, ++#else + (inquiry)id3_length, ++#endif + NULL, + NULL, ++#if PY_VERSION_HEX >= 0x02050000 ++ (ssizeargfunc)id3_item, ++ (ssizessizeargfunc)id3_slice, ++ (ssizeobjargproc)id3_ass_item, ++ (ssizessizeobjargproc)id3_ass_slice, ++#else + (intargfunc)id3_item, + (intintargfunc)id3_slice, + (intobjargproc)id3_ass_item, + (intintobjargproc)id3_ass_slice, ++#endif + (objobjproc)id3_contains, + NULL, + NULL, +@@ -824,7 +841,7 @@ + static ID3_Frame* frame_from_dict( ID3_FrameID fid, PyObject* dict ) + { + char* data; +- int size; ++ Py_ssize_t size; + + ID3_Field* field; + ID3_FieldID flid; |