<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 5 Aug 2021 at 20:34, Bruce Steers <<a href="mailto:bsteers4@gmail.com">bsteers4@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 4 Aug 2021 at 00:53, <<a href="mailto:jose.rodriguez@cenpalab.cu" target="_blank">jose.rodriguez@cenpalab.cu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u><div><div style="font-family:arial,sans-serif;font-size:13px">August 3, 2021 2:29 PM, "Bruce Steers" <<a href="mailto:bsteers4@gmail.com?to=%22Bruce%20Steers%22%20%3Cbsteers4@gmail.com%3E" target="_blank">bsteers4@gmail.com</a>> wrote:<br> <blockquote><div><div><div dir="ltr"> <div style="font-size:small"></div> <div style="font-size:small">I have this program i'm developing that was starting and stopping cleanly then i recently added some controls and did various other things and now it says this when it starts...</div> <div style="font-size:small"></div> <div style="font-size:small">(Desktop-ish:12906): Gtk-WARNING **: 16:29:25.336: Theme parsing error: <data>:1:15: Expected a valid selectorIs there a way to track down what's causing it?</div> <div style="font-size:small"></div> <div style="font-size:small">thanks</div> <div style="font-size:small">BruceS</div> <div style="font-size:small"></div> </div></div></div></blockquote> <br><br>GTK has always output loads of different errors with many programs (not gambas ones, I mean), when run in a terminal. People say it depends on the current theme and whatnot...<br><br></div></div></blockquote><div><br></div><div style="font-size:small">Indeed, Pluma was always my texteditor of choice and that used to pump out loads of warnings.</div><div style="font-size:small">(but now of course i use my own editor i wrote with gambas that has all those cool Texteditor features ;) ) <br></div><div style="font-size:small"><br></div><div style="font-size:small">Would be great to be able to catch the warnings though.</div><div style="font-size:small">Either a way to track what exactly is causing them or just suppress the messages.</div><div style="font-size:small"><br></div><div style="font-size:small"><br></div><div style="font-size:small"><br></div><div style="font-size:small">BruceS<br></div></div></div></blockquote><div><br></div><div><br></div><div style="font-size:small" class="gmail_default">so best answer i have so far is this "hack"...</div><div style="font-size:small" class="gmail_default">Uses gb.args</div><div style="font-size:small" class="gmail_default">if the arg -q or --quiet is given then before the app loads it launches itself with any and all args plus "2>/dev/null" to redirect the error output and an additional arg -s.<br></div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default">when the 2nd run instance quits the 1st one that launched the second one also quits before it's even done anything.<br></div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default"><b>Public Sub _new()<br>  <br>  Args.Begin()<br>  Dim bQuiet As Boolean = Args.Has("q", "quiet", "supress gtk error messages")<br>  If bQuiet Then bQuiet = (Args.Has("s", "supressed", "supressed gtk error warnings") == False)<br>  Args.End()<br><br>  If bQuiet And File.In.IsTerm Then </b> ' if we are not run from a terminal then no need for any of this<b><br>    Dim sRestOfargs As String[] = Args.All.Copy()<br></b></div><div style="font-size:small" class="gmail_default"><b><br></b></div><div style="font-size:small" class="gmail_default"><b>    '</b> the next 2 lines just handle if being run from the IDE and make Arg[0] be executable name.<b><br></b></div><div style="font-size:small" class="gmail_default"><b>    If Not InStr(sRestOfargs[0], "/") Then sRestOfargs[0] = Application.Path &/ Application.Name<br>    If File.Ext(sRestOfargs[0]) <> "gambas" Then sRestOfargs[0] &= ".gambas"   <br></b></div><div style="font-size:small" class="gmail_default"><b><br></b></div><div style="font-size:small" class="gmail_default"><b>    sRestOfargs.Insert(["-s", "2>/dev/null"])<br>    Shell sRestOfargs.Join(" ")<br>    Me.Close<br>    Return<br>  Endif<br><br>End<br></b></div><div style="font-size:small" class="gmail_default"><b><br></b></div><div style="font-size:small" class="gmail_default">Attached is a simple test app</div><div style="font-size:small" class="gmail_default">It's a form with a tiny little TextArea in it, so small it produces warnings on my system when i move the mouse around the window...</div><div style="font-size:small" class="gmail_default">(Test:79673): Gdk-CRITICAL **: 20:26:58.775: gdk_window_is_visible: assertion 'GDK_IS_WINDOW (window)' failed</div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default">Run with -q and all is quiet.</div><div style="font-size:small" class="gmail_default">./Test.gambas -q<br></div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default">Of course this method will suppress ANY error messages , <br></div><div style="font-size:small" class="gmail_default">shell commands can be fixed by adding '>2&1' <br></div><div style="font-size:small" class="gmail_default">Shell "/run/mycommand 2>&1"</div><div style="font-size:small" class="gmail_default">that redirects error output to stdout and stdout is still showing</div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default">Please somebody tell me there's a better way...</div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default">BruceS</div><div style="font-size:small" class="gmail_default"><br></div><div style="font-size:small" class="gmail_default"><b></b></div><div style="font-size:small" class="gmail_default"><b></b></div></div></div>