Skip to content
Snippets Groups Projects
  1. Apr 05, 2025
    • Roman Pišl's avatar
      start: Add the /elevate option. · 7e7f880b
      Roman Pišl authored
      Wine starts processes non-elevated since e92ba2de
      but some installers exit prematurely when not elevated.
      
      The elevation mechanism is taken from 8cc22a60.
      7e7f880b
    • Aaron Hill's avatar
      wintypes: Partially implement RoResolveNamespace and add 'Windows.winmd' · 7cf29735
      Aaron Hill authored
      The Visual Studio 2022 installer needs to be able to lookup a valid
      WinMD file for the 'Windows.Networking.Connectivity' namespace
      in order for the installation to start.
      
      A normal Windows installation contains lots of individual
      '.winmd' files (e.g. 'Windows.Networking.winmd'), which we
      cannot redistribute. Fortunately, Microsoft provides an open-source
      project called 'windows-rs', which contains a combined 'Windows.winmd'
      file that is explicitly MIT-licensed:
      https://github.com/microsoft/windows-rs/blob/master/crates/libs/bindgen/default/Windows.winmd
      
      Make RoResolveNamespace resolve anything starting with 'Windows' by just
      pointing to this giant file. A full implementation will require us to
      actually walk the 'WinMetadata' directory (if the caller provides
      a custom path) and parse the matched '.winmd' file. However, this
      implementation is good enough for Visual Studio 2022
      
      To actually run the vs2022 installer, a patch for
      the SHELL_execute trailing-space bug https://bugs.winehq.org/show_bug.cgi?id=56940
      is needed: wine/wine!6079
      7cf29735
    • Keno Fischer's avatar
      ntdll/server: Make robust to spurious short writes · 9c954dfd
      Keno Fischer authored
      
      It is possible for the write/writev functions in send_request to
      return short writes, even in non-error conditions. There are
      several situations where this might happen. Examples are:
       - SIGSTOP/SIGCONT (either explicitly or via ptrace attach)
       - cgroup freezes and similar mechanisms
       - system suspends
       - External debuggers or profilers
      
      In general, Linux makes very few guarantees about syscall restarts.
      In some cases (in particular when no bytes have been transferred at all),
      the linux kernel will automatically restart the system call, but once any
      bytes have been transferred, the result will be a short write with
      no automatic restart.
      
      Make wine robust to this corner case by properly restarting a
      short write with adjusted buffers.
      
      Signed-off-by: default avatarKeno Fischer <keno@juliacomputing.com>
      9c954dfd
  2. Apr 04, 2025
  3. Apr 03, 2025
Loading