1. 06 Feb, 2024 1 commit
  2. 23 Aug, 2023 1 commit
    • Eric Pouech's avatar
      server: Separate console and new group flag (CreateProcess). · 82b0bb3c
      Eric Pouech authored
      We were using bit 1 of RTL_USER_PROCESS_PARAMETERS for two different cases:
      - rightfully, as a sign to block ctrl-c events from being processed by
        handlers (and by default, terminating the process)
      - But this was also used to request for the creation of a new process group.
      
      This patch properly separates the two use cases, by using the
      ProcessGroupId field in RTL_USER_PROCESS_PARAMETERS (checked that Win10
      behaves as this patch in RtlCreateUserProcess wrt.
      RTL_USER_PROCESS_PARAMETERS ProcessGroupId usage input/output).
      
      Introduce process_group_id in startup_info_t and use it to pass it to
      server. ProcessGroupId field in RTL_USER_PROCESS_PARAMETERS is now properly
      set.
      
      Note: this will change some external behavior.
      - before this patch, a child process created with Ctrl-C disabled
        (ConsoleFlags set), couldn't turn it on as the process was detached
        from unix console.
      - now, SIGINT handling is moved to kernelbase (and can be turned on/off at
        application will),
      - when creating a new windows group id, the child will be detached from
        unix console, so will no longer receives the SIGINT from ctrl-c in unix
        console (if parent was attached to this unix console).
      Signed-off-by: 's avatarEric Pouech <epouech@codeweavers.com>
      82b0bb3c
  3. 24 May, 2023 1 commit
  4. 22 Nov, 2022 1 commit
  5. 28 Jul, 2022 1 commit
  6. 12 Apr, 2022 1 commit
  7. 25 Jan, 2022 3 commits
  8. 03 Jan, 2022 1 commit
  9. 02 Jan, 2022 1 commit
  10. 09 Dec, 2021 2 commits
  11. 19 Nov, 2021 1 commit
  12. 12 Nov, 2021 1 commit
  13. 31 Oct, 2021 1 commit
  14. 27 Oct, 2021 2 commits
  15. 07 Oct, 2021 1 commit
  16. 14 Sep, 2021 1 commit
  17. 30 Jul, 2021 1 commit
  18. 01 Jul, 2021 4 commits
  19. 30 Jun, 2021 1 commit
  20. 24 Jun, 2021 1 commit
  21. 27 May, 2021 1 commit
  22. 24 May, 2021 1 commit
  23. 20 May, 2021 2 commits
  24. 19 May, 2021 2 commits
  25. 13 May, 2021 2 commits
  26. 27 Apr, 2021 1 commit
  27. 23 Apr, 2021 1 commit
  28. 21 Apr, 2021 1 commit
    • Rémi Bernon's avatar
      server: Track desktop users per thread instead of per process. · 769a2616
      Rémi Bernon authored
      As some thread may use a different desktop from their process.
      
      This fixes the user32 win tests, which leaks a desktop that never gets
      closed. The test_shell_window test creates a new desktop, which spawns
      explorer.exe process, incrementing the desktop user count to 1, then
      associates the desktop to a thread, which closes it on exit.
      
      Never the user count is incremented to 2, and closing the thread desktop
      doesn't either check whether the desktop process should be terminated.
      
      Reversely, it is possible to create a desktop, associate it with a
      thread /and/ a process, and this time the desktop process would be
      terminated when the process exits, although the thread may still be
      using it.
      
      Tracking the users per thread is more robust and fixes the problem as
      set_thread_desktop increments the desktop user count, and thread exit
      decrements it.
      Signed-off-by: 's avatarRémi Bernon <rbernon@codeweavers.com>
      Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
      769a2616
  29. 16 Apr, 2021 1 commit
  30. 31 Mar, 2021 1 commit