Skip to content

Commit f34f655

Browse files
authored
Merge pull request #1929 from cboulay/nev-over-4gib
Blackrock: fix OverflowError reading .nev files over 4 GiB
2 parents 8f250c6 + fe011ea commit f34f655

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

‎neo/rawio/blackrockrawio.py‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1675,7 +1675,8 @@ def _read_nev_data(self, spec, filename):
16751675
The NEV filename to read from
16761676
"""
16771677
packet_size_bytes = self._nev_basic_header["bytes_in_data_packets"]
1678-
header_size = self._nev_basic_header["bytes_in_headers"]
1678+
# int(): a uint32 scalar overflows against file sizes > 4 GiB under NumPy 2 (NEP 50)
1679+
header_size = int(self._nev_basic_header["bytes_in_headers"])
16791680

16801681
if self._nev_basic_header["ver_major"] >= 3:
16811682
ts_format = "uint64"
@@ -1987,7 +1988,7 @@ def _get_nev_rec_times(self):
19871988
filename = ".".join([self._filenames["nev"], "nev"])
19881989

19891990
dt = [("timestamp", "uint32")]
1990-
offset = self._get_file_size(filename) - self._nev_params("bytes_in_data_packets")
1991+
offset = self._get_file_size(filename) - int(self._nev_params("bytes_in_data_packets"))
19911992
last_data_packet = np.memmap(filename, offset=offset, dtype=dt, mode="r")[0]
19921993

19931994
n_starts = [0 * self._nev_params("event_unit")]

0 commit comments

Comments
 (0)