bugGNU Octave - Bugs: bug #50732, [octave forge] (Image) infinite...

 
 

bug #50732: [octave forge] (Image) infinite error loop when assigning a strel (class) object to a vector

Submitter:  Hartmut <hardy>
Submitted:  Wed 05 Apr 2017 05:20:43 PM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Unexpected Error or Warning
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  * Open
Release:  * 4.2.1 Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Fri 07 Apr 2017 07:52:52 PM UTC, comment #2: 

The strel class was implemented in the @class style (this was before Octave had classdef).  In order to support dot notation, we overload subsref.  I am thinking the problem is there, and our poor support for strel arrays.  Maybe we need to overload subsasgn or one of the other subsX methods.

But we should probably be moving strel to classdef instead, which is meant to handle those issues for us.

Carnë Draug <carandraug>
Group Member
Thu 06 Apr 2017 04:34:53 AM UTC, comment #1: 

confirmed.
Adding package maintainer

Avinoam Kalma <avinoam>
Group Member
Wed 05 Apr 2017 05:20:43 PM UTC, original submission:  

Here is how to reproduce the behavior:

clear
pkg load image

se = strel ("square", 1);
vec(1)=se;
vec(2)=se;


As a result I get an infinite stream of error messages like this:

[...]
error: parse error
error: called from
    print_usage at line 91 column 5
    size at line 31 column 3
error: Invalid call to isempty. Correct usage is:

-- isempty (A)
error: parse error
[...and so on...]


This happens with Octave 4.2.1 and image-2.6.1 (both current releases). I have seen this under Linux (Ubuntu 16.04) as well as under Windows (7).

I am not sure if this is a bug in the definition of the strel (class) object (this would be part of the image package). Or if this in a bug in core Octave. But even if there is something ill-defined with the (image package) strel object, I think core Octave should just throw one error message and then stop. The current behavior of starting an infinite loop of error messages cannot be right on the (core) Octave side. This loop of error messages can NOT even be stopped by hitting Ctrl-C.

Hartmut <hardy>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Updated the item)
  • -email is unavailable- added by avinoam (Posted a comment)
  • -email is unavailable- added by avinoam
  • -email is unavailable- added by hardy (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-08-12 jwe SummaryImage package: infinite error loop when assigning a strel (class) object to a vector [octave forge] (Image) infinite error loop when assigning a strel (class) object to a vector
    2017-04-06 avinoam CategoryOctave Function Octave Package
        StatusNone Confirmed
        Summaryinfinite error loop when assigning a strel (class) object to a vector Image package: infinite error loop when assigning a strel (class) object to a vector
        Carbon-Copy- Added -email is unavailable-

    Back to the top

    Powered by Savane 3.14-3b9d.
    Corresponding source code