octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #51631] make check fails at __opengl_info__


From: Rik
Subject: [Octave-bug-tracker] [bug #51631] make check fails at __opengl_info__
Date: Tue, 1 Aug 2017 19:28:26 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0

Follow-up Comment #15, bug #51631 (project octave):

Verified that 'make check' now passes, but there is still an issue with FLTK. 
For example,


./run-octave -f --no-gui-libs   # CLI-version only has FLTK available
test __opengl_info__


will fail.  But, this is really related to having an OpenGL window available. 
This will pass


./run-octave -f --no-gui-libs
plot (1:10);
test __opengl_info__


The problem seems to be in gl-render.cc where the special variables such as
__gl_version are set.  The code is


  void
  opengl_renderer::draw_figure (const figure::properties& props)
  {
    // Initialize OpenGL context

    init_gl_context (props.is_graphicssmoothing (), props.get_color_rgb ());

#if defined (HAVE_OPENGL)
    std::cerr << "draw_figure" <<std::endl;
    props.set___gl_extensions__ (gl_get_string (GL_EXTENSIONS));
    props.set___gl_renderer__ (gl_get_string (GL_RENDERER));
    props.set___gl_vendor__ (gl_get_string (GL_VENDOR));
    props.set___gl_version__ (gl_get_string (GL_VERSION));

#endif

    // Draw children

    draw (props.get_all_children (), false);
  }


I modified it to add the output on stderr whenever the routine is called. 
This will cause the function to be executed.


close all
graphics_toolkit qt
h = figure ();


However, this will not.


close all
graphics_toolkit fltk
h = figure ();


A cheap hack for __opengl_info__.m is to do some operation which forces a
redraw of the figure.  Apparently drawnow(), pause() are not enough.  But a
refresh command is.  This reliably works for me. 


    hf = figure ("position", [0,0,1,1], "toolbar", "none", "menubar",
"none");
    hax = axes ();
    pause (0.2);
+    refresh (hf);





    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?51631>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]