bugGNU Octave - Bugs: bug #47927, Ctrl+C crashes Octave on MacOS


bug #47927: Ctrl+C crashes Octave on MacOS

Submitted by:  Ben Abbott <bpabbott>
Submitted on:  Mon 16 May 2016 12:11:44 AM UTC  
Category:  Interpreter Severity:  4 - Important
Priority:  5 - Normal Item Group:  Segfault, Bus Error, etc.
Status:  Fixed Assigned to:  None
Originator Name:  Ben Abbott Open/Closed:  Closed
Release:  dev Operating System:  Mac OS

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)

Fri 09 Mar 2018 03:02:56 PM UTC, comment #16: 

On MacOS, ctrl-C behaves as expected from a non-active command line and when stuck in an infinite loop. I think this can be closed.

Ben Abbott <bpabbott>
Project Member
Thu 08 Mar 2018 09:44:59 PM UTC, comment #15: 

OK, but this bug report and my question is about the behavior on MacOS.

John W. Eaton <jwe>
Project Administrator
Thu 08 Mar 2018 09:33:22 PM UTC, comment #14: 

As far I know, it was fixed in version 4.2.1.
No more problems here (using Slackware 14.2).

Fellype do Nascimento <fellype>
Thu 08 Mar 2018 08:49:33 PM UTC, comment #13: 

Is this still an issue for the current dev sources?  Can this report be closed?

John W. Eaton <jwe>
Project Administrator
Tue 02 May 2017 07:27:42 PM UTC, comment #12: 

I can confirm that the Ctrl+C still crashes Octave GUI in MacOS with 4.0.3. The about window states: Octave was configured for "x86_64-apple-darwin14.5.0".

It doesn't crash the octave-cli, and works as expected (prints ^C, creates new line.).

I tested re-assigning the Ctrl-C in Preferences>>Shortcuts to something harmless, but that did not solve the problem.

However just tested 4.2.1 installed through brew, for which Ctrl-C does not crash the GUI. I just wanted to write it here so that others can try to upgrade if they are having issues with earlier versions.

Batuhan Osmanoglu <bosmanoglu>
Fri 20 Jan 2017 07:30:10 PM UTC, comment #11: 

Fellype - your observation looks like bug #49609. Take a look at that report and help debug if you can.

Mike Miller <mtmiller>
Project Administrator
Fri 20 Jan 2017 07:07:00 PM UTC, comment #10: 

I have a more critical problem here...
I'm running octave-4.2.0 on Slackware 14.2, with KDE 4.14.
When I type ctrl+c in the octave gui, it acts like a ctrl+alt+backspace and try to restart the X.  An error message is displayed and the octave-gui window still open until you click on the OK button of the error message.
Bizarre :-O

Fellype do Nascimento <fellype>
Wed 31 Aug 2016 12:05:14 AM UTC, comment #9: 

I recently upgraded from Mac OS 10.10 to 10.11. Since the upgrade the gui build with Fink doesn't work for me. That is likely due to some changes to clang, which I can likely figure out, but haven't attempted yet.

In any event, a 4.0.3 build using homebrew does run for me.

Ben Abbott <bpabbott>
Project Member
Tue 30 Aug 2016 08:47:50 PM UTC, comment #8: 

I spoke too soon, all seams to be taken care of at the end of QTerminal.cc.
Sorry for the noise.

Pantxo Diribarne <pantxo>
Project Member
Tue 30 Aug 2016 08:26:07 PM UTC, comment #7: 

@Ben: about comment #6, are you running pure cli or "--no-gui"?

I wanted to comment on the suspicious code below (from TerminalView.cc):

void TerminalView::copyClipboard(bool extra_interrupt)
  if ( !_screenWindow || !hasFocus())

  QString text = _screenWindow->selectedText(_preserveLineBreaks);

  if (text.isEmpty ())
      if (! extra_interrupt)
        emit interrupt_signal ();

In Octave Ctrl+C is ubiquitous:

  • it is the default shortcut for "copy to clipboard" on all platforms but Mac. On Mac I'd expect CTRL+C not to be caught by Octave (as copyClipboard is CMD+C).

@Ben: does CMD+C have any effect in the terminal? in the terminal preferences tab, is the option "Disable global shortcuts ..." checked? Can you try to change the shortcut for copyClipboard to CTRL+C, and eventually play with the above option?

  • in the command window it means "interrupt unless text selected". 

Instead of watching copyClipboard events, we should watch actual CTRL+C keyboard events and decide what to do if CTRL+C is actually the shortcut for copyClipboard.

Pantxo Diribarne <pantxo>
Project Member
Tue 09 Aug 2016 12:26:23 AM UTC, comment #6: 

ugh ... the gui no longer comes up for me. Even so, ctrl-c doesn't terminate Octave.

If I run the cli, and hit ctrl-c several times, I'm able to trigger an ASAN error and if I continue I get "panic: Abort trap: 6 -- stopping myself..."

Ben Abbott <bpabbott>
Project Member
Mon 08 Aug 2016 08:40:29 PM UTC, comment #5: 

@Ben: Can you check whether Ctrl+C still crashes the MacOS GUI?

Rik <rik5>
Project Administrator
Wed 25 May 2016 12:42:44 PM UTC, comment #4: 

Possibly related to similar Ctrl-C crashing on Windows, able to reproduce consistently when calling the pager (less)

Nicholas Jankowski <nrjank>
Project Member
Mon 16 May 2016 04:12:12 PM UTC, comment #3: 

I checked 4.0.2. It also crashes for me.

Ben Abbott <bpabbott>
Project Member
Mon 16 May 2016 09:59:03 AM UTC, comment #2: 

I can't reproduce this on Linux, so I've added "on MacOS" to the summary.

The log says that it is accessing a NULL pointer within the readline library itself, in rl_read_key.

Thread 5 seems to be at the same point as Thread 0, the one that crashed, until the innermost stack frame.  Thread 5 is performing a __select, whereas Thread 0 is in rl_read_key.

It seem odd.  Would you be able to do a code bisection to find where it started?

Lachlan Andrew <lachlan>
Mon 16 May 2016 12:15:12 AM UTC, comment #1: 

When the gui crashes, I'm able to save a log. It is also attached.

(file #37170)

Ben Abbott <bpabbott>
Project Member
Mon 16 May 2016 12:11:44 AM UTC, original submission:  

Running the gui, Ctrl+C crashes Octave.

Running with --no-gui Ctrl+C followed by a CR crashes Octave.

When it crashes a octave-workspace file is produced. I've attached it.

Ben Abbott <bpabbott>
Project Member


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

Attach Files:

Attached Files
file #37170:  crash.log added by bpabbott (61KiB - application/octet-stream)
file #37169:  octave-workspace added by bpabbott (209B - application/octet-stream)


Depends on the following items: None found

   bug dependencies.


Carbon-Copy List
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by bosmanoglu (Posted a comment)
  • -email is unavailable- added by fellype (Posted a comment)
  • -email is unavailable- added by pantxo (Posted a comment)
  • -email is unavailable- added by nrjank (Posted a comment)
  • -email is unavailable- added by lachlan (Posted a comment)
  • -email is unavailable- added by bpabbott (Submitted the item)

    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 10 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-03-03 mtmiller Carbon-CopyRemoved 80942 => -
    2018-03-09 jwe StatusNeed Info => Fixed
        Open/ClosedOpen => Closed
    2018-03-08 jwe StatusNone => Need Info
    2017-01-24 pantxo Dependencies- => bugs #50140 is dependent
    2017-01-22 rik5 Carbon-CopyRemoved 72865 => -
    2016-07-01 rik5 Severity3 - Normal => 4 - Important
    2016-05-16 lachlan SummaryCtrl+C crashes Octave => Ctrl+C crashes Octave on MacOS
    2016-05-16 bpabbott Attached File- => Added crash.log, #37170
    2016-05-16 bpabbott Attached File- => Added octave-workspace, #37169

    Back to the top

    Powered by Savane 3.7