Re: [Vala] multithreading -> weird behaviour on win(msys) and macOS



 

   > On Tuesday, 12 March 2019, 15:48:59 GMT, Wolfgang Mauer <wolfgang mauer kabelmail de> wrote:  
With Linux everything works like expected with no errors/warnings but on 
Windows(10/MSYS64) and macOS it get lots of errors.

(valaDevelop.exe:2980): Gtk-CRITICAL **: 16:33:50.460: 
gtk_text_view_get_buffer: assertion 'GTK_IS_TEXT_VIEW (text_view)' failed
These are type checks for the GType system. 
Seehttps://gitlab.gnome.org/GNOME/gtk/blob/master/gtk/gtktextview.h#L42https://developer.gnome.org/gobject/stable/gobject-Type-Information.html#G-TYPE-CHECK-INSTANCE-TYPE:CAPS
Probably text_view is null, so you may have some kind of scoping problem. You are usingclosures that should 
encapsulate the enclosing scope.
One thing to try is compiling with debug information and then use G_DEBUG=fatal-criticals and a debugger.
For example see https://wiki.gnome.org/Projects/Vala/DeveloperDocumentation#Debugging

You are then in to checking versions of libraries on macOS and Windows and to see if 
they are up to date as possible or comparable with what was used on Linux.

You also need to be checking the version of Vala used and the C code generated to make sure
there is nothing unusual.

Any idea ?
Nothing specific, but the above might give you some things to try.

                        // Timeout with 0 goes to "UI-Thread" ?! >                        
GLib.Timeout.add(0, () =>

The 0 specifies the delay before the timeout source is called, nothing to do with a thread.GLib.Timeout.add() 
is a convenience method: 
https://developer.gnome.org/glib/stable/glib-The-Main-Event-Loop.html#g-timeout-addIt adds the timeout to the 
global GMainContext and the docs advise "the callback will be invoked in whichever thread is running that 
maincontext"To specify the GMainContext you would need to use 
https://valadoc.org/glib-2.0/GLib.TimeoutSource.html and then attach() it to the relevantGMainContext.

Al




  


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]