On Mon May 27 23:57:31 2024 +0000, Fabian Maurer wrote:
> @iamahuman There is no parameters used so what should I translate?
The `TOKEN_MANDATORY_LABEL` structure pointed by `ptr`, with length `len`. This is documented in https://learn.microsoft.com/en-us/windows/win32/api/winnt/ne-winnt-token_in….
You need to define both `TOKEN_MANDATORY_LEVEL32` (with ULONG in place of pointers) and `TOKEB_MANDATORY_LABEL` (with actual pointers).
Also, don't assume `ptr` is not "used." Maybe *right now,* but ntdll and wow64 are still separate components that can get out of sync without tests.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5721#note_71422
On Mon May 27 23:57:31 2024 +0000, Jinoh Kang wrote:
> @DarkShadow44 you also have to translate 32bit struct parameter to 64bit
> before passing to native.
@iamahuman There is no parameters used so what should I translate?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5721#note_71421
Rémi Bernon (@rbernon) commented about tools/widl/widltypes.h:
> struct location where;
> unsigned int ignore : 1;
> unsigned int defined : 1;
> + unsigned int defined_in_import : 1;
What about decoupling this from the definition status? Something like `is_imported`?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5724#note_71400
Rémi Bernon (@rbernon) commented about tools/widl/typetree.c:
> error_loc("type %s already defined at %s:%d\n", type->name, type->where.input_name, type->where.first_line );
>
> type->defined = TRUE;
> + init_location(&type->where, NULL, NULL);
It would be better to pass the explicit token location from the parser instead of relying on the implicit global last location.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5724#note_71399
Rémi Bernon (@rbernon) commented about tools/widl/widltypes.h:
>
> struct location where;
>
> - unsigned int declonly : 1;
> + /* Should we define the UDT in this var, when writing a header? */
> + bool define;
This is the first and only use of `bool` in widl. Later, you're also introducing a new `unsigned int :1` field elsewhere.
I think something like `is_definition` is also more appropriate for an object property. Same below.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5724#note_71398
We'll want to keep both copies of `merge_devmode()` in sync, so please combine these two commits into one.
Also, the subject of the commit message seems to have word-wrapped - please keep it as a single line.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/5720#note_71393