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

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

[Octave-bug-tracker] [bug #65797] adding keyboard command within __bar__


From: Nicholas Jankowski
Subject: [Octave-bug-tracker] [bug #65797] adding keyboard command within __bar__.m update_data() function causes Octave hang
Date: Sun, 26 May 2024 22:13:32 -0400 (EDT)

URL:
  <https://savannah.gnu.org/bugs/?65797>

                 Summary: adding keyboard command within __bar__.m
update_data() function causes Octave hang
                   Group: GNU Octave
               Submitter: nrjank
               Submitted: Sun 26 May 2024 10:13:32 PM EDT
                Category: Plotting
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Segfault, Bus Error, etc.
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
                 Release: stable
         Discussion Lock: Any
        Operating System: Microsoft Windows
           Fixed Release: None
         Planned Release: None


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Sun 26 May 2024 10:13:32 PM EDT By: Nicholas Jankowski <nrjank>
Attempting to work through recent bar bugs, I was running into inexplicable,
repeatable Octave hangs that require me to force quite the program. I realized
it came from adding a keyboard statement within the update_data subfunction in
`__bar__.m`, but only when placed in certain locations and then making a
change that triggers the subfunction like setting horizontal to on.

I reverted all of my changes and I can reproduce with a clean stable build:

no crash:

hf = figure;
hax = axes ("parent", hf);
hb = bar (2:4);
set (hb, "horizontal", "on");



no crash:
Adding "keyboard" in __bar__.m at line 527:

##      vertical = strcmp (get (h, "horizontal"), "off");
##      keyboard
##      for i = 1:columns (y)

## save __bar__.m`

close all;  clear all;  clear -f;
hf = figure;
hax = axes ("parent", hf);
hb = bar (2:4);
set (hb, "horizontal", "on");
## will stop in __bar__>update_data at line 527
## F5 will continue without error. 


Octave hang: 
Remove keyboard added above,  add "keyboard" in __bar__.m at line 535 (the
end
of the function before the unwind_protect_cleanup line):

##      endfor
##      keyboard
##      unwind_protect_cleanup

## save __bar__.m`

close all;  clear all;  clear -f;
hf = figure;
hax = axes ("parent", hf);
hb = bar (2:4);
set (hb, "horizontal", "on");
## Octave hangs.


In Windows, the hang produces the spinning circle, grayed out window title,
"(Not Responding)" status in title and Task manager.  The Octave title does
change to (Debugging), but the CLI never showed the:  "stopped in ..." message
with keyboard> prompt. 

I know other locations within that subfunctions seemed to cause this as well,
but can't seem to figure out why. These were the locations that i could
reliably trigger the crash.  I'm not sure why in front of that for block
hangs, but after doesn't.

Able to recreate with 9.1.0 and recent stable build (hg id: a1a78e6b2063).  I
haven't had a chance to try on linux yet.









    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?65797>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

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