Eugene Sandulenko
389c6725ea
DIRECTOR: Do not crash when script dumping is requested
2022-12-02 10:56:43 +01:00
Eugene Sandulenko
af94562bbe
DIRECTOR: Fix dumped movies from .exe files. Patch courtesy of eientei
2022-12-02 10:39:59 +01:00
Roland van Laar
9a6dea9466
DIRECTOR: Fix memory leaks in archive.cpp
...
The newly used Common::SeekableReadStreamEndianWrapper was leaking.
Setting the DisposeAfterUse to YES resolved the leaks.
2022-11-30 10:51:41 +01:00
Roland van Laar
78bd7e7fd5
DIRECTOR: Fix compilation deprecation warning
...
Remove uses of deprected `SeekableSubReadStreamEndian` in archive.cpp
The deprationwarning was:
Use SeekableReadStreamEndianWrapper with SeekableSubReadStream instead
2022-11-29 22:11:02 +01:00
Cameron Cawley
bca9a3e5b3
DIRECTOR: Use SeekableReadStreamEndianWrapper
2022-11-29 00:06:49 +01:00
Le Philousophe
29dea747a8
DIRECTOR: Don't use unsafe sprintf and vsprintf
2022-10-23 22:46:19 +02:00
Roland van Laar
2e39acf84c
DIRECTOR: Improve RIFF loading
...
Two improvements for RIFF loading: size and alignment
A RIFF elements header: FourCC and size (4 bytes each) are not included
in the size. Offset + 12 then size - 4.
'DIB ' resources were found to always lead with two zero bytes.
Tested with: Fujitsu fmTOWNS SUPER TECHNOLOGY DEMO 1993.
Other resources such as 'SND ' do need alignment.
Tested with: SpaceWarlock Win. Intro movie lacked sound without
alignment. (WARNING: SNDDecoder: Bad format: 17408!)
2022-10-18 22:02:41 +02:00
Scott Percival
095ae06405
COMMON: Refactor MacResManager::load* methods to accept a pointer
...
Previously the methods would pass by reference, then convert to a
pointer on success and take ownership. This isn't ideal, as a
reference suggests no transferral of ownership, and doesn't suggest
it needs to be a heap resource allocated by new.
2022-09-25 10:35:03 +02:00
Scott Percival
00a7d69fd1
DIRECTOR: Plug stream leak for Mac archives
2022-09-25 10:35:03 +02:00
Roland van Laar
eb79194f86
DIRECTOR: Fix memory leak
...
Free data after allocating it for dumping resource chunks.
2022-09-19 23:08:55 +02:00
Roland van Laar
9ddb71fe6e
DIRECTOR: Improve comment ILS
...
ILS is the initial load segment.
The part of a shockwave file that's needed to get things going and
other media can be loaded later over a slow 90s internet connection
2022-09-17 22:24:56 +02:00
Scott Percival
9e17e5aa85
DIRECTOR: Plug memory leak
2022-09-12 15:52:18 +02:00
Misty De Meo
43d96157e5
DIRECTOR: unify getResource behaviour
2022-08-16 17:43:33 -07:00
Misty De Meo
1ed15b789d
DIRECTOR: only record valid MacArchive members
2022-08-09 22:22:11 -07:00
djsrv
fac330bec4
DIRECTOR: Don't fall back to getFirstResource if chunk not in KEY*
...
There doesn't seem to be any case in which we should fall back to
getFirstResource in D4 as found in #4172 . So we can remove that fallback
and the associated warning.
2022-08-10 00:18:04 -04:00
djsrv
28b7b0b297
DIRECTOR: Handle collisions between movie and cast member IDs
2022-08-10 00:11:20 -04:00
Pragyansh Chaturvedi
dbe1ae48d5
DIRECTOR: Use KEY* mappings instead of taking the first resource to load chunks
2022-08-09 16:18:15 -05:00
Pragyansh Chaturvedi
8f9da662cc
DIRECTOR: Implement _movieChunk to store indices of chunks having 1024 as parent
2022-08-09 16:18:15 -05:00
Pragyansh Chaturvedi
766d74f8f6
DIRECTOR: Read KEY* resource before reading CAS* resource
2022-08-09 16:18:15 -05:00
Eugene Sandulenko
2d30fcb84f
DIRECTOR: Fix file sizes for dumped Mac resources
2022-07-05 15:22:12 +02:00
Eugene Sandulenko
acac0a5f27
DIRECTOR: Fix dumping Mac resources
2022-07-05 14:13:59 +02:00
eientei
f9e16e59ed
DIRECTOR: +Casino 5 Pack; fix dumpChunk bug where getResource can return nullpointer
2022-06-22 23:38:15 +02:00
Pragyansh Chaturvedi (r41k0u)
ecd6f218df
DIRECTOR: Refactor dumping of RIFX chunks to dump all archive chunks
2022-06-14 23:11:58 +02:00
Roland van Laar
c546990e21
DIRECTOR: Fix use after free
...
probeMacBinary when macArchive has a rsrc fork, otherwise delete the
archive. The archive is deleted during ~Director cleanup.
2022-03-29 23:21:09 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Orgad Shaneh
02cfffcb67
DIRECTOR: Use nullptr
...
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
djsrv
e6c696031f
DIRECTOR: Punycode dump file names
2021-08-07 10:44:37 +02:00
djsrv
02aace0598
DIRECTOR: Use ':' as directory separator
2021-08-07 10:44:37 +02:00
djsrv
909595176a
COMMON: Use Path type in MacResManager functions
2021-08-07 10:44:37 +02:00
djsrv
1e7e9707a8
DIRECTOR: Load XCOD from non-projector MacBinaries
...
Meet MediaBand's Main/Shared.dir contains XCOD resources.
2021-08-04 19:30:52 -04:00
Eugene Sandulenko
e85288e2b3
DIRECTOR: Better handling of string resources.
...
In case there is garbage after \0 we will skip it all
2021-07-29 12:23:49 +02:00
Eugene Sandulenko
986c84fb72
DIRECTOR: Avoid adding \0s to strings
2021-07-29 12:02:22 +02:00
djsrv
7e13add452
DIRECTOR: Fix memory leaks
2021-07-27 23:50:44 -04:00
ysj1173886760
f719167515
DIRECTOR: add ignoreCast option for findResourceID
2021-07-12 14:15:25 +08:00
djsrv
9ec8fbb649
DIRECTOR: Fix resource leaks
2021-07-06 23:33:14 -04:00
djsrv
0294513802
DIRECTOR: Fix uninitialized fields
2021-07-06 23:33:09 -04:00
djsrv
ba9f696482
DIRECTOR: Fix APPL archives
...
_rifxType was getting changed before it reached the APPL conditional
before. This fixes that. I also moved APPL handling out of readMemoryMap
since it was sort of out of place there.
2021-06-04 16:47:19 -04:00
djsrv
486513c715
DIRECTOR: Skip normal loading for APPL archives again
2021-06-04 09:50:02 -04:00
djsrv
33060e14d8
DIRECTOR: Fix offsets in dumped movies
2021-06-03 15:54:53 -04:00
djsrv
be813e2ccc
DIRECTOR: Calculate DCR chunk offsets from start of ILS
...
Previously chunk offsets were calculated from the end of ABMP instead of
the beginning of the ILS body like they should be. I had to manually
shift the offsets by 5 bytes, which might not always be the right amount
due to the use of varints. This should always be correct.
2021-05-20 18:48:21 -04:00
Eugene Sandulenko
e27d5ac7fc
DIRECTOR: JANITORIAL: Code formatting and unified the namespace end comments
2020-08-21 00:36:19 +02:00
djsrv
af8fa6a82e
DIRECTOR: Fix Shockwave chunk dumping
2020-08-12 17:26:55 -04:00
djsrv
d846db8da6
DIRECTOR: Fix loading KEY* from Shockwave movies
2020-08-12 17:26:55 -04:00
djsrv
61a02b7606
DIRECTOR: Implement DCR getResource
2020-08-12 17:26:55 -04:00
djsrv
baacf3c1ab
DIRECTOR: Replace SeekableSubReadStreamEndian
...
Use the superclass SeekableReadStreamEndian.
2020-08-12 17:26:55 -04:00
djsrv
760e89ae11
DIRECTOR: Load ILS
2020-08-12 12:14:56 -04:00
djsrv
2f367c1911
DIRECTOR: Adjust ABMP offsets
2020-08-12 12:14:00 -04:00
djsrv
045b5e08b2
DIRECTOR: Fix ABMP length
2020-08-12 12:12:57 -04:00
djsrv
28ca9065d4
DIRECTOR: Validate uncompressed chunk length
2020-08-12 10:38:45 -04:00
djsrv
f8e8a3ff38
DIRECTOR: Fix CAS*, KEY* error handling
...
Need to check hasResource
2020-08-12 10:26:54 -04:00