octave 3.0.4 rc5

Marco Caliari marco.caliari at univr.it
Tue Feb 24 03:15:18 CST 2009


Dear maintainers,

I reported, against 3.0.4-rc1, the following two bugs

octave:1> x=linspace(0,1);
octave:2> plot(x,x,x,x.^2)
octave:3> xlabel('x')
octave:4> ylabel('y')
error: __go_draw_axes__: unknown object class, root figure
error: evaluating switch command near line 332, column 7
error: evaluating for command near line 328, column 5
error: evaluating if command near line 25, column 3
error: called from `__go_draw_axes__' in file 
`/usr/local/share/octave/3.0.4/m/plot/__go_draw_axes__.m'
error: evaluating switch command near line 58, column 4
error: evaluating for command near line 56, column 2
error: evaluating if command near line 33, column 7
error: evaluating if command near line 26, column 5
error: evaluating if command near line 25, column 3
error: called from `__go_draw_figure__' in file 
`/usr/local/share/octave/3.0.4/m/plot/__go_draw_figure__.m'
error: evaluating if command near line 81, column 6
error: evaluating if command near line 78, column 4
error: evaluating if command near line 76, column 2
error: evaluating for command near line 75, column 7
error: evaluating if command near line 45, column 5
error: called from `drawnow' in file 
`/usr/local/share/octave/3.0.4/m/plot/drawnow.m'

and reversed legends for

octave:1> x=linspace(0,1);
octave:2> plot(x,x,x,x.^2)
octave:3> legend('linear','quadratic')

which were not present in 3.0.3 and are still present in 3.0.4-rc5. I can 
solve them with the following quite trivial patches

--- src/graphics.cc.orig        2009-02-06 14:19:15.000000000 +0100
+++ src/graphics.cc     2009-02-06 14:19:38.000000000 +0100
@@ -715,7 +715,7 @@

    if (k >= 0)
      {
-      Matrix new_kids (n-1, 1);
+      Matrix new_kids (1, n-1);
        octave_idx_type j = 0;
        for (octave_idx_type i = 0; i < n; i++)
         {

and

--- scripts/plot/legend.m.orig  2009-01-16 08:35:33.000000000 +0100
+++ scripts/plot/legend.m       2009-02-06 14:15:58.000000000 +0100
@@ -171,7 +171,7 @@
    endif

    warned = false;
-  for i = nargs:-1:1
+  for i = 1:nargs
      arg = varargin{i};
      if (ischar (arg))
        while (k <= nkids

I understood that (only) regressions should be fixed, according to the 
current policy, and I agree with it. Otherwise, I apologize for reporting 
these bugs twice.

Best regards,

Marco


More information about the Bug-octave mailing list