1. 30 May, 2023 34 commits
  2. 29 May, 2023 6 commits
    • Jinoh Kang's avatar
      ntdll: Don't hard-code DLL manifest resource ID when looking up dependency assembly. · d0d472bb
      Jinoh Kang authored
      This allows any manifest resource IDs (e.g.,
      ISOLATIONAWARE_MANIFEST_RESOURCE_ID) to be recognized when looking up
      the assembly manifest of a dependency.
      
      Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=18889
      d0d472bb
    • Jinoh Kang's avatar
    • Jinoh Kang's avatar
      ntdll: Move ACTCTX lpResourceName validation to RtlCreateActivationContext. · d992e2d0
      Jinoh Kang authored
      This prevents passing NULL resource name to get_manifest_in_module().
      d992e2d0
    • Jinoh Kang's avatar
    • Jinoh Kang's avatar
      kernel32/tests: Remove test for ACTCTX_FLAG_HMODULE_VALID with hModule = NULL case. · f0fcce14
      Jinoh Kang authored
      Today, the test scenario "ACTCTX_FLAG_HMODULE_VALID but hModule if not
      set" is broken and unreliable.  This problem is not evident in WineHQ
      batch test runs; rather, the test failure seems to only be triggered
      when the kernel32:actctx test is run in isolation.
      
      When the flag ACTCTX_FLAG_HMODULE_VALID is specified in ACTCTXW but
      hModule is set to NULL, CreateActCtxW() may encounter different failure
      modes depending on the test executable file.  Error codes observed so
      far include ERROR_SXS_CANT_GEN_ACTCTX and ERROR_SXS_MANIFEST_TOO_BIG.
      
      When the aforementioned test reports ERROR_SXS_CANT_GEN_ACTCTX on
      Windows, an event is recorded in the Windows Event Log as follows:
      
      - Log Name:    Application
      - Source:      SideBySide
      - Event ID:    59
      - Level:       Error
      - Description:
      
        Activation context generation failed for "<path..>\kernel32_test.exe".Error in manifest or policy file "<path..>\kernel32_test.exe" on line 0.
        Invalid Xml syntax.
      
      It appears that the inconsistent failure was caused by Windows trying to
      interpret the main executable file of the current process as an XML
      manifest file.  This fails due to one or more of the following reasons:
      
      - ERROR_SXS_CANT_GEN_ACTCTX: A valid PE executable that starts with the
        "MZ" signature is not a valid XML file.
      
      - ERROR_SXS_MANIFEST_TOO_BIG (or ERROR_NOT_ENOUGH_MEMORY): The
        executable's size may exceed the limit imposed by the manifest parser.
        This is much more likely for binaries with debugging symbols.
      
        Meanwhile, winetest.exe bundles a stripped version of the test
        executable (kernel32_test-stripped.exe), which is often smaller than
        the original executable (not stripped).  This probably explains why
        the problem was not visible in batch test runs.
      
      Fix this by removing the failing test entirely.
      f0fcce14
    • Jacek Caban's avatar
      b601e3fa