bugGNU Octave - Bugs: bug #57709, Octave crashes when changing...

 
 

bug #57709: Octave crashes when changing sub-structure that is viewed in Variable Editor

Submitted by:  Dennis <dizze>
Submitted on:  Fri 31 Jan 2020 01:25:59 PM UTC  
 
Category:  GUI Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Segfault, Bus Error, etc.
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  Open
Release:  5.2.0 Operating System:  Microsoft Windows

Add a New Comment (Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

( Jump to the original submission)

Sun 02 Feb 2020 09:07:21 PM UTC, comment #9: 

Philip,
I checked bug #55668 and there are similarities, but also differences. If I understand the comments in that thread correctly, the error there results from a VE action that is incorrectly translated into a code to perform the action. However, the bug I report here occurs when a valid code is executed in the command line while viewing the struct in the VE. The system doesn't crash when the code is executed without viewing the variable. It seems that the adjustment of the VE window after changing the struct goes wrong. That is not necessarily the same as what happens when editing a struct from within the VE.

Dennis <dizze>
Sun 02 Feb 2020 05:28:50 PM UTC, comment #8: 

@Dennis:
This bug looks a lot like bug #55668. Can you confirm?

Philip Nienhuis <philipnienhuis>
Project Member
Sat 01 Feb 2020 12:05:52 AM UTC, comment #7: 

@Dennis:
Thanks for the info.

Intriguing, this has been working in the development version until recently.
I'll try some more binary installers (I made one ~ every 3 days) to see where it started to crash.

A bit of experimenting shows that the VE doesn't like the size of a.b{1} to be made smaller:

a.b{1} = {4 5 6} ## works fine
a.b{1} = {7 8}  ## crashes
a.b{1} = {9 10 11 12} ## works fine
but then:
a.b{1} = {1 2 3} ## crash

Philip Nienhuis <philipnienhuis>
Project Member
Fri 31 Jan 2020 08:38:00 PM UTC, comment #6: 

Philip, I have seen this for at least a year, in all versions since v4.4.1.

(I didn't use Octave before that, but worked with Matlab).

Dennis <dizze>
Fri 31 Jan 2020 08:30:00 PM UTC, comment #5: 

@OP, Dennis:

_This bug is troubling me for a while now_

Since when do you see this happening?
I've tried a few older 6.0.0 Windows installers (development release) I have lying around and one from Jan 19 still works fine.

Philip Nienhuis <philipnienhuis>
Project Member
Fri 31 Jan 2020 04:23:03 PM UTC, comment #4: 

I don't have windows.
I did try the original part of bug #53858 and it does not crash  but does go into an infinite loop of error messages.

Doug Stewart <dastew>
Fri 31 Jan 2020 03:31:55 PM UTC, comment #3: 

Works for me too in Octave-5.1.0, but not in the dev version (from Jan. 26 and from Jan. 29) on Windows. So probably some sort of regression.

When leaving the semicolon at the end of 'a.b(1) = []' Octave does show the new contents of 'a' and returns to the prompt but segfaults very soon after. Hopefully that gives a clue.
Absence or presence of the 'clear all' statement makes no difference.

Philip Nienhuis <philipnienhuis>
Project Member
Fri 31 Jan 2020 03:31:37 PM UTC, comment #2: 

Thanks Doug. I have two questions:
1. do you have the possibility to confirm this in Windows?
2. Could you try bug #53858 in Ubuntu? The described behaviour is still present in v5.1.90.

Pending confirmation, it seems this bug is a Windows issue.

Dennis <dizze>
Fri 31 Jan 2020 02:07:23 PM UTC, comment #1: 

I tried what you said and did not see any problems. It worked as expected.
Ubuntu and octave 5.1.9
hgid
ans = ece72b94486f

Doug Stewart <dastew>
Fri 31 Jan 2020 01:25:59 PM UTC, original submission:  

This bug is troubling me for a while now and I hoped it would be solved in v.5.1.90. It is not. It is present in v4.4.1 and up.

The bug has a lot of resemblance with bug id #53858. However, the example provided there doesn't crash the GUI, but causes an endless loop. The example below actually causes a crash of the GUI

Method to reproduce:

clear all
a.b{1} = {1 2 3};
a.b{2} = {2 3};
a.b{3} = [];
openvar a;
% Double-click the  "a.b" cell to open a new Variable Editor panel
% Double-click the  "a.b{1}" cell to open a new Variable Editor panel
a.b{1} = [];

The last entry causes Octave to crash (tested in Windows).

Dennis <dizze>

 

(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 dastew (Posted a comment)
  • -email is unavailable- added by dizze (Submitted the item)
  • -email is unavailable- added by dizze
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

     

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-01-31 rik5 Carbon-CopyRemoved 72865 => -
    2020-01-31 rik5 Release5.1.90 => 5.2.0
    2020-01-31 philipnienhuis Item GroupNone => Segfault, Bus Error, etc.
        StatusNone => Confirmed
    2020-01-31 dizze Carbon-Copy- => Added dizze

    Back to the top


    Powered by Savane 3.5