Hi,

On 09/11/17 09:42, Thomas Goirand wrote:
> On 11/08/2017 10:52 AM, James Cowgill wrote:
>> Hi,
>>
>> On 07/11/17 22:29, Thomas Goirand wrote:
>>> Hi James,
>>>
>>> I tried to build on zelenka.debian.org, which is a s390 porter box (big
>>> endian), and it failed even more.
>>
>> I only tested on mips (where my patch works). Maybe the other failures
>> are specific to 64-bit big endian? Eg: s390x, ppc64 and sparc64 all
>> failed the same way which is different from the way mips and powerpc fail.
>>
>> Thanks,
>> James
> 
> Hi,
> 
> I tried again, and with or without your patch, there's always 12 unit
> test failures on s390x, so I guess you must be right.
> 
> Any chance you could attempt to help again?

I had a small look :)

This patch works on s390x. One of the variables passed to
PyArg_ParseTupleAndKeywords was declared with the wrong time.
Unfortunately there's no type checking here.

James
--- python-lz4-0.10.1+dfsg1.orig/lz4/frame/_frame.c
+++ python-lz4-0.10.1+dfsg1/lz4/frame/_frame.c
@@ -400,7 +400,7 @@ compress_update (PyObject * Py_UNUSED (s
 {
   PyObject *py_context = NULL;
   const char *source = NULL;
-  unsigned long source_size = 0;
+  int source_size = 0;
   struct compression_context *context;
   size_t compressed_bound;
   char *destination_buffer;
@@ -630,7 +630,7 @@ get_frame_info (PyObject * Py_UNUSED (se
       return NULL;
     }

-  return Py_BuildValue ("{s:i,s:i,s:i,s:i,s:i}",
+  return Py_BuildValue ("{s:i,s:i,s:i,s:i,s:K}",
                         "blockSizeID", frame_info.blockSizeID,
                         "blockMode", frame_info.blockMode,
                         "contentChecksumFlag", frame_info.contentChecksumFlag,

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to