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

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

[Octave-bug-tracker] [bug #52904] "mesh" with input array of "logical" t


From: Dan Sebald
Subject: [Octave-bug-tracker] [bug #52904] "mesh" with input array of "logical" type causes Octave to crash
Date: Mon, 15 Jan 2018 23:50:59 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0

Follow-up Comment #1, bug #52904 (project octave):

OK, there's a bug here, thanks.

This fails for all the graphics toolkits, so the problem is up stream.  Here
are the dimensions of the data that is being passed into
__gnuplot_draw_axes__.m:


octave:2> mesh(zeros(25,25)==0); # "logical" array argument
nr =  25
nc =  25
ans =

    1   25

ans = double
ans =

   25    1

ans = double
ans =

   25   25

ans = logical
error: invalid value for array property "zdata"
error: called from
    surface>__surface__ at line 195 column 5
    surface at line 63 column 19
    mesh at line 77 column 12
ans =

    1   25

ans =

   25    1

ans =

   3   3

ans = err 2
error: __gnuplot_draw_axes__: invalid grid data
error: called from
    __gnuplot_draw_axes__ at line 1249 column 11
    __gnuplot_draw_figure__ at line 164 column 17
    __gnuplot_drawnow__ at line 86 column 5


The dimensions of the zdata are 3 x 3, obviously wrong.

The place this originates from is here:


static Matrix
default_surface_zdata (void)
{
  Matrix m (3, 3, 0.0);

  for (int row = 0; row < 3; row++)
    m(row,row) = 1.0;

  return m;
}


in graphics.cc.  It appears as though the C code is deciding to do nothing if
the data is logical so that default data gets propagated onward.  This
shouldn't be too difficult of a fix.

    _______________________________________________________

Reply to this item at:

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

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




reply via email to

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