Urs Fleisch ca8c2e07ec Support large files over 2GB on Windows (#1089)
Backport of 4dcf0b41c687292e7b1263a679921c157ae2c22a
b01f45e141afa6a89aea319a2783f177e202fa1d
https://github.com/taglib/taglib/pull/77

Tested with files larger than 2GB which have been created using

sox -n -r 44100 -C 320 large.mp3 synth 58916 sine 440 channels 2
sox -n -r 44100 -C 0 large.flac synth 25459 sine 440 channels 2
sox -n -r 44100 -C 10 large.ogg synth 229806 sine 440 channels 2
sox -n -r 44100 large.wav synth 6692 sine 440 channels 2
ffmpeg -f lavfi -i "sine=frequency=440:duration=244676" -y large.m4a

The only file which was readable with the tagreader example
before this commit was large.ogg. The problem is that long on
Windows is only 32-bit (also in LLP64 data model of 64-bit
compilation target) and all the file offsets using long are
too small for large files. Now long is replaced by offset_t
(defined to be long long on Windows and off_t on UNIX) for such
cases and some unsigned long are now size_t, which has the
correct size even on Windows.
2023-07-09 07:01:37 +02:00
..
2023-07-09 07:01:37 +02:00
2016-02-06 01:27:36 +09:00
2021-01-03 19:06:59 +01:00
2016-02-06 01:27:36 +09:00
2016-02-06 01:27:36 +09:00
2021-01-18 20:31:52 +01:00
2021-01-18 20:31:52 +01:00
2016-02-06 01:27:36 +09:00
2021-01-18 20:31:52 +01:00
2016-02-06 01:27:36 +09:00