On Mon Sep 25 07:27:07 2023 +0000, Rémi Bernon wrote:
> Fwiw this is not always the location of the executable, especially if it
> is located in a subfolder of the package, but the package root folder
> path instead. Anyway, this should be good enough for now.
Yeah, you're right. Minecraft calls `IApplicationData::get_LocalFolder()`, which is supposed to return the packages directory when `IStorageItem::get_Path()` is called, i.e. `AppData\\Local\\Packages\\Microsoft.MinecraftUWP\\LocalState`.
The IApplicationData::get_ methods correspond to folders within the relative package folder.
There doesn't seem to be a simple way of retrieving these directories. Each package has a number as a suffix. What I'm doing right now is loading the appxmanifest.xml file, using the identity name, and traversing the packages directory to find the right package. This doesn't account for duplicate names, which is unlikely to happen, but a concern nonetheless.
Still, this seems best done using package APIs. Also, since Wine does not yet support installing packages, retrieving the directory this way won't work. Or rather, it doesn't create the package folder that IApplicationData::get_ points to, I don't know if simply adding in package folders would be enough for some applications to work.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3548#note_47174
Currently ShellExecuteA() doesn't work for opening very long (>1024 chars) URLs. Commit fbf9cf6ebadc7d50c8fb7a130851c3658607b343 ("shell32: Make sure wcmd has enough space to hold the string.") started fixing it, but that is not enough.
This MR fixes two other issues on the way and lets ShellExecuteA() actually started winebrowser (with default registry) with the URL correctly relayed.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3981
I wanted to use ._xy element access to make it shorter, but that attempt was crushed by the reality - such indexing apparently compiles but does not produce correct element access loads. I'm going to update once this is fixed.
--
v6: vkd3d-shader/hlsl: Add determinant() function.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/329