The detection was done on the dropped path, so it worked when
dropping a directory, but not a file. Now we can drop a file
and it will run the detection on the parent directory.
The SdlWindow::createOrUpdateWindow makes sure the created window
is not bigger than the desktop. When not in fullscreen, the window
borders are also considered, but on macOS a maximimized window is
borderless, so this resulted in maximized window being restored
smaller than they should have (and no longer maximized).
The SDL backend was getting that path at the start and storing
it in a class member so that it would persist for the session.
But now that we have a kSessionDomain in ConfMan, it is cleaner
to use that (and this will also work for non-SDL backends).
…once)
I am not sure if this bug ticket is about just one or about several bugs. This is at least something I could reproduce. The reason is that there can be channels that should start up muted. We didn't support that. I also fixed a couple of other things about the mute state that I noticed.
In the floppy VGA version of Monkey Island 1 (and only this particular
version), the lava was flowing up instead of flowing down, in the cave
under the Giant Monkey Head. This doesn't happen with the original
interpreter. ScummVM displays this effect correctly with the VGA CD
version.
This is maybe because the game uses color-cycling for this effect in
VGA, and the floppy VGA version is still a GF_SMALL_HEADER game where
we decode this effect differently, notably by always setting its
flags to 2 (and it's been this way for a very long time).
Setting the flags to 0 instead fix this effect. We should maybe
always use this 0 value, but it seems safer to only change this value
for the lava at the moment, until some disasm confirms or disproves
the current flags value for GF_SMALL_HEADER games.
(Also fix some incoherent indentation while there.)
The behaviour of malloc and similar functions when called with a zero
sized parameter is implementation dependent resulting in subtle portability
bugs and should be avoided.
This will generate warnings in GCC if -Walloc-zero is passed.
The behaviour of malloc and similar functions when called with a zero
sized parameter is implementation dependent resulting in subtle portability
bugs and should be avoided.
This will generate warnings in GCC if -Walloc-zero is passed.