Opened 6 years ago

Closed 6 years ago

#1037 closed defect (fixed)

byte-blob-find fails on certain matches on 32-bit Chicken

Reported by: dthedens Owned by: iraikov
Priority: major Milestone: someday
Component: extensions Version: 4.7.x
Keywords: byte-blob, 32-bit Cc:
Estimated difficulty:

Description

(byte-blob-find (list->byte-blob (list 1 31)) (list->byte-blob (list 0 1 31 3)))

fails to match on 32-bit, but succeeds on 64-bit. Replace 31 with any byte value with low 5 bits all set (63, 95, etc.) and matches also fail. This may be related to the fact that internal function (swizzle 31) -> 0 on 32-bit, but is #x80000000 on 64-bit.

Change History (3)

comment:1 Changed 6 years ago by iraikov

  • Owner set to iraikov
  • Status changed from new to accepted

Hello, thanks for the bug report. I have rewritten swizzle so that it does not rely on 64-bit integers, and I have made a new release of byte-blob. Please try it out and let me know if it works for you.

comment:2 Changed 6 years ago by dthedens

Yes, this seems to have fixed my small test case as well as my original problem on 32 bit. Thanks for the quick turnaround!

comment:3 Changed 6 years ago by iraikov

  • Resolution set to fixed
  • Status changed from accepted to closed
Note: See TracTickets for help on using tickets.