Merge nucleic/lucid-river-toad-6efj into dev
This commit is contained in:
@@ -128,6 +128,16 @@ service proper (`LxssUserSession`, `LxssUserSessionInBox`).
|
||||
for `IWSLCSessionManager`. One object, two faces. `IWSLCVirtualMachine` was refused by every
|
||||
class, confirming §13.1's retraction against the machine rather than against an IDL.
|
||||
|
||||
`--internal-call` then confirmed the **vtable** matches the IDL: `GetVersion()` (slot 3) returned
|
||||
2.9.4, agreeing with the compat `WslcService.GetVersion()` in the same run — the same service
|
||||
answering through both faces — and `ListSessions()` (slot 6) returned S_OK. So hand-written
|
||||
`ComImport` is sufficient and the C++/WinRT shim §13.1 mused about is not needed.
|
||||
|
||||
It returned **0 sessions**, though, so the entry-struct layout (inline `wchar_t` buffers, the same
|
||||
shape `ListContainers` uses) is still untested. Run `--session --keep --internal-call` to create a
|
||||
session, re-adopt it through the internal interface, and exercise it — that combination is §2.3's
|
||||
reattach story end to end, and it also answers the handoff question below. `wsl --shutdown` after.
|
||||
|
||||
The hypothesis was that one of those objects also implements the internal interface — COM
|
||||
objects routinely expose several — so `--internal` activates each and QIs for the internal IIDs.
|
||||
It **never calls a method**, so a vtable mismatch cannot crash it, and QI alone answers the
|
||||
|
||||
Reference in New Issue
Block a user