octave-maintainers
[Top][All Lists]
Advanced

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

Re: demos which uses patch/legend fails after cset df972b9d080a


From: Andreas Weber
Subject: Re: demos which uses patch/legend fails after cset df972b9d080a
Date: Tue, 22 Jul 2014 00:48:03 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.5.0

Am 22.07.2014 00:24, schrieb Andreas Weber:
> Am 21.07.2014 22:18, schrieb Andreas Weber:
>> Dear Pantxo, since changeset
>>
>> Ă„nderung:        18901:df972b9d080a
>> Nutzer:          Pantxo Diribarne <address@hidden>
>> Datum:           Sat Jun 21 13:07:57 2014 +0200
>> Zusammenfassung: Translate patch property listeners to C++ (bug #42159)
>>
>> these demos fails with A(I,J): row index out of bounds; value 2 out of
>> bound 1 or A(I,J): column index out of bounds; value 3 out of bound 2

Okay, here is a backtrace from a new debug build
hg id ed3cb9f81145 tip @
../octave-src/configure FFLAGS=-g CFLAGS=-g CXXFLAGS=-g
--enable-bounds-check

$ ./run-octave -g --no-gui
(gdb) b lo-array-gripes.cc:103

octave:1> debug_on_error(1)
octave:2> t = linspace (0, 2*pi, 100)'; y = [sin(t).^2, cos(t).^2];
octave:3> area (t, y); axis tight
[New Thread 0x7fffd48f5700 (LWP 16165)]
octave:4> legend ('sin^2', 'cos^2', 'location', 'NorthEastOutside');
[Switching to Thread 0x7fffd8723700 (LWP 16154)]

Breakpoint 1, gripe_index_out_of_range (nd=2, dim=1, idx=2, ext=1)
    at ../../octave-src/liboctave/util/lo-array-gripes.cc:105
105              (dim == 1) ? "row" : "column", idx, ext);

(gdb) bt
#0  gripe_index_out_of_range (nd=2, dim=1, idx=2, ext=1)
    at ../../octave-src/liboctave/util/lo-array-gripes.cc:105
#1  0x00007ffff58ddead in compute_index (i=1, j=0, dims=...)
    at ../../octave-src/liboctave/array/Array-util.cc:194
#2  0x00007ffff5721db3 in Array<double>::compute_index
(this=0x7fffd871da20, i=1, j=0)
    at ../../octave-src/liboctave/array/Array.cc:169
#3  0x00007ffff57220b2 in Array<double>::checkelem (this=0x7fffd871da20,
i=1, j=0)
    at ../../octave-src/liboctave/array/Array.cc:204
#4  0x00007ffff7af44c2 in Array<double>::operator()
(this=0x7fffd871da20, i=1, j=0)
    at ../../octave-src/liboctave/array/Array.h:383
#5  0x00007ffff708942a in patch::properties::update_fvc
(this=0x7fffd0c93910)
    at ../../octave-src/libinterp/corefcn/graphics.cc:7897
#6  0x00007ffff70c2af7 in patch::properties::update_ydata
(this=0x7fffd0c93910) at corefcn/graphics.h:9634
#7  0x00007ffff70c15e0 in patch::properties::set_ydata
(this=0x7fffd0c93910, val=...)
    at corefcn/graphics.h:9429
#8  0x00007ffff7013443 in patch::properties::set (this=0x7fffd0c93910,
pname_arg=..., val=...)
    at corefcn/graphics-props.cc:4179
#9  0x00007ffff70a86b9 in base_graphics_object::set
(this=0x7fffd0c93900, pname=..., pval=...)
    at corefcn/graphics.h:2910
#10 0x00007ffff6f99014 in graphics_object::set_value_or_default
(this=0x7fffd871e4c0, name=..., val=...)
    at ../../octave-src/libinterp/corefcn/graphics.cc:2320
#11 0x00007ffff6f988e7 in graphics_object::set (this=0x7fffd871e4c0,
args=...)
    at ../../octave-src/libinterp/corefcn/graphics.cc:2083
#12 0x00007ffff6f9986c in xset (h=..., args=...) at
../../octave-src/libinterp/corefcn/graphics.cc:2486
#13 0x00007ffff7095b59 in make_graphics_object (go_name="patch",
integer_figure_handle=false, args=...)
    at ../../octave-src/libinterp/corefcn/graphics.cc:9799
#14 0x00007ffff70973e5 in F__go_patch__ (args=...) at
../../octave-src/libinterp/corefcn/graphics.cc:10045
#15 0x00007ffff6cb1552 in octave_builtin::do_multi_index_op
(this=0x7fffd0094a10, nargout=1, args=...,
    lvalue_list=0x0) at
../../octave-src/libinterp/octave-value/ov-builtin.cc:132

(gdb) c
Continuing.
error: __go_patch__: A(I,J): row index out of bounds; value 2 out of bound 1
error: called from
    __patch__ at line 188 column 7
    patch at line 87 column 16
    legend at line 885 column 20
stopped in
/home/andy/src/octave-default-dbg-build/../octave-src/scripts/plot/draw/private/__patch__.m
at line 188
188:     h = __go_patch__ (p, args{:});
debug> dblist
183       else
184         args = varargin;
185       endif
186     
187       if (!failed)
188-->      h = __go_patch__ (p, args{:});
189       endif
190     endfunction
debug> args
args =
{
  [1,1] = xdata
  [1,2] =

     0.054498   0.463236   0.463236   0.054498

  [1,3] = ydata
  [1,4] =

     0.90000   0.90000   0.60000   0.60000

  [1,5] = facecolor
  [1,6] =

     0   0   1

  [1,7] = edgecolor
  [1,8] =

     0   0   0

  [1,9] = cdata
  [1,10] = [](0x0)
  [1,11] = userdata
  [1,12] = -18.688
}

I'll try to debug this further tomorrow, Andy



reply via email to

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