[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mono-patches
Subject:    [Mono-patches] [mono/gtk-sharp] [2 commits] 7dafb39c: gui-thread-check: add two more methods to the
From:       "Lluis Sanchez (slluis.devel () gmail ! com)" <mono-patches () lists ! ximian ! com>
Date:       2013-10-31 9:24:36
Message-ID: 000001420dd425e2-e072f592-8dbb-4612-9f8f-ae4bd3f0e236-000000 () email ! amazonses ! com
[Download RAW message or body]


   Branch: refs/heads/master
     Home: https://github.com/mono/gtk-sharp
  Compare: https://github.com/mono/gtk-sharp/compare/68c64bedc05a...78fd18e0b7e8

   Commit: 7dafb39c01f16445f303e20be545e133cbe7a19a
   Author: Andrés G. Aragoneses <knocte@gmail.com> (knocte)
     Date: 2013-10-31 09:18:02 GMT
      URL: https://github.com/mono/gtk-sharp/commit/7dafb39c01f16445f303e20be545e133cbe7a19a


gui-thread-check: add two more methods to the whitelist

At application shutdown, it's very likely to be spammed by
gui-thread-check with a river of:

*** GTK CALL NOT IN GUI THREAD: Widget.Dispose
*** GTK CALL NOT IN GUI THREAD: Widget.remove_InternalDestroyed
*** GTK CALL NOT IN GUI THREAD: Widget.Dispose
*** GTK CALL NOT IN GUI THREAD: Widget.remove_InternalDestroyed
...

From what I gather, these two methods (in gtk-sharp master[1]) could
be called by the finalizers, but do not call any unmanaged functions,
so it should be ok to not report them as violations.

[1] https://github.com/mono/gtk-sharp/blob/master/gtk/Widget.cs

Cherry-picked from https://github.com/slluis/gui-thread-check/commit/77a40599ca621db418d4e2d85e70a254088d975f


Changed paths:
  M gtk/gui-thread-check/profiler/gui-thread-check.c

Modified: gtk/gui-thread-check/profiler/gui-thread-check.c
===================================================================
@@ -72,9 +72,11 @@
 		}
 		if (current_thread_id != guithread &&
 			!(strcmp (klass_name, "Object")==0 && strcmp (method_name, "Dispose")==0) &&
+			!(strcmp (klass_name, "Widget")==0 && strcmp (method_name, "Dispose")==0) &&
 			!(strcmp (klass_name, "Application")==0 && strcmp (method_name, "Invoke")==0) &&
 			!(strcmp (method_name, "Finalize")==0) &&
 			!(strcmp (method_name, "get_NativeDestroyHandler")==0) &&
+			!(strcmp (method_name, "remove_InternalDestroyed")==0) &&
 			!(strcmp (method_name, "remove_Destroyed")==0)
 		) {
 			printf ("*** GTK CALL NOT IN GUI THREAD: %s.%s\n", klass_name, method_name);

   Commit: 78fd18e0b7e80e26bb4635a4940b50498617d034
   Author: Lluis Sanchez <slluis.devel@gmail.com> (slluis)
     Date: 2013-10-31 09:22:31 GMT
      URL: https://github.com/mono/gtk-sharp/commit/78fd18e0b7e80e26bb4635a4940b50498617d034


Merge pull request #88 from knocte/guithreadcheck_whitelist

gui-thread-check: add two more methods to the whitelist

Changed paths:
  M gtk/gui-thread-check/profiler/gui-thread-check.c

Modified: gtk/gui-thread-check/profiler/gui-thread-check.c
===================================================================
@@ -72,9 +72,11 @@
 		}
 		if (current_thread_id != guithread &&
 			!(strcmp (klass_name, "Object")==0 && strcmp (method_name, "Dispose")==0) &&
+			!(strcmp (klass_name, "Widget")==0 && strcmp (method_name, "Dispose")==0) &&
 			!(strcmp (klass_name, "Application")==0 && strcmp (method_name, "Invoke")==0) &&
 			!(strcmp (method_name, "Finalize")==0) &&
 			!(strcmp (method_name, "get_NativeDestroyHandler")==0) &&
+			!(strcmp (method_name, "remove_InternalDestroyed")==0) &&
 			!(strcmp (method_name, "remove_Destroyed")==0)
 		) {
 			printf ("*** GTK CALL NOT IN GUI THREAD: %s.%s\n", klass_name, method_name);
_______________________________________________
Mono-patches maillist  -  Mono-patches@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-patches


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic