Alexandre Julliard : server: Don' t touch the users count when a system process switches desktops.
Alexandre Julliard
julliard at winehq.org
Mon May 5 14:28:32 CDT 2008
Module: wine
Branch: master
Commit: a789375f8bffca8a92777d2b41f605b22f719872
URL: http://source.winehq.org/git/wine.git/?a=commit;h=a789375f8bffca8a92777d2b41f605b22f719872
Author: Alexandre Julliard <julliard at winehq.org>
Date: Mon May 5 21:02:34 2008 +0200
server: Don't touch the users count when a system process switches desktops.
---
server/winstation.c | 19 ++++++++++---------
1 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/server/winstation.c b/server/winstation.c
index 817fe77..2ad4146 100644
--- a/server/winstation.c
+++ b/server/winstation.c
@@ -309,17 +309,18 @@ void set_process_default_desktop( struct process *process, struct desktop *deskt
LIST_FOR_EACH_ENTRY( thread, &process->thread_list, struct thread, proc_entry )
if (!thread->desktop) thread->desktop = handle;
- desktop->users++;
- if (desktop->close_timeout)
+ if (!process->is_system)
{
- remove_timeout_user( desktop->close_timeout );
- desktop->close_timeout = NULL;
- }
- if (old_desktop)
- {
- old_desktop->users--;
- release_object( old_desktop );
+ desktop->users++;
+ if (desktop->close_timeout)
+ {
+ remove_timeout_user( desktop->close_timeout );
+ desktop->close_timeout = NULL;
+ }
+ if (old_desktop) old_desktop->users--;
}
+
+ if (old_desktop) release_object( old_desktop );
}
/* connect a process to its window station */
More information about the wine-cvs
mailing list