bugGNU Octave - Bugs: bug #52840, GUI hangs on use of...


bug #52840: GUI hangs on use of uigetfile/uiputfile

Submitted by:  Rik <rik5>
Submitted on:  Tue 09 Jan 2018 12:21:05 AM UTC  
Category:  GUI Severity:  5 - Blocker
Priority:  5 - Normal Item Group:  Regression
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  Open
Release:  dev Operating System:  GNU/Linux

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)

Wed 25 Mar 2020 04:45:51 PM UTC, comment #19: 

Is this still an issue with a build from the current stable branch (Octave 6) on macOS?

Markus M├╝tzel <mmuetzel>
Project Member
Thu 17 Jan 2019 05:20:21 PM UTC, comment #18: 

As the original reporter, I can say that this now works fine for me on Linux.  I have updated my OS and in the process got newer KDE libraries and I am pretty sure that is what fixed it, rather than a change in Octave.

Rik <rik5>
Project Administrator
Mon 14 Jan 2019 01:24:44 AM UTC, comment #17: 

I can build stable.

uiputfile() still hangs the GUI for me. This is on macOS 10.13.6.

Full build logs: https://gist.github.com/b496a2110695ed4574de42507afb574f

I added an `octave-stable` formula to make it convenient for other macOS users who want to try the stable branch:

brew tap octave-app/octave-app-bases
brew install -s octave-stable

For some reason, the HG ID isn't showing in ver on this build:

octave:1> ver
GNU Octave Version: 5.0.1 (hg id: unknown)

But examining my repo checkout directly, it looks like this is commit changeset:   26534:c8efbaf65180.

Andrew Janke <apjanke>
Sat 12 Jan 2019 07:48:06 PM UTC, comment #16: 

I'm not able to reproduce this on a current 5.0.1 build.

@Andrew: Are you able to build the stable branch for macOS?

Andreas Weber <andy1978>
Project Member
Tue 04 Dec 2018 07:20:48 PM UTC, comment #15: 

I think I can reproduce this on macOS 10.13 using Octave 4.4.0 or Octave 4.4.1, built with the Qt GUI.

uigetfile() seems to work fine.

But running uiputfile() will hang the GUI. Both of these variants of calling it will hang Octave.

uiputfile ()
uiputfile ({'.gif;.png;*.jpg', 'Supported Picture Formats'});

The longer calling form is from `rundemos()`.

Do you think this is the same bug?

(Encountered by an Octave.app user; original report at https://github.com/octave-app/octave-app/issues/10.)

Andrew Janke <apjanke>
Thu 08 Mar 2018 08:58:11 PM UTC, comment #14: 

Sure, next week is fine.  It's pretty vanilla: Linux Mint 18.1 running KDE.

KDE has shown some weird issues with regard to Dockable widgets, and with respect to Key Accelerators in menus.  But, there was also something that changed in Octave because the bisection definitely determined a single cset where the issue started.

Rik <rik5>
Project Administrator
Thu 08 Mar 2018 08:37:40 PM UTC, comment #13: 

Rik: What is your system?  I could try to duplicate it if I installed the same thing in a VM.  Or maybe we can look at this next week?

John W. Eaton <jwe>
Project Administrator
Thu 08 Mar 2018 07:46:19 PM UTC, comment #12: 

Yes, it is still an issue.  This is test code I use:

./run-octave -f
x = uigetfile ()

This is with the latest tip from today (3/8/18)

parent: 24849:96c74e33d17a tip
pcg.m: Overhaul function and BIST tests (bug #53258).

Rik <rik5>
Project Administrator
Thu 08 Mar 2018 07:02:14 PM UTC, comment #11: 

Rik: Is this problem still present for you?  I am unable to duplicate, but I'm using gnome.

John W. Eaton <jwe>
Project Administrator
Thu 11 Jan 2018 08:06:56 PM UTC, comment #10: 

@jwe: Any idea why refactoring signal handling would have created this bug for me?  Is there something in _octave_link_ which explains this?

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 09:01:19 PM UTC, comment #9: 

@Torsten: Maybe you should open a new bug report about the problems in comment #6 and #7 so they don't get lost in this report.

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 09:00:31 PM UTC, comment #8: 

Well this is definitely real.  I used 'hg bisect' to narrow it down to this changeset:

parent: 24520:c5c11b07598a
refactor signal handling (bug #52757)
branch: default

I'm changing the status back to Confirmed and adding jwe to the CC list.

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 07:35:43 PM UTC, comment #7: 

The issue in KDE (see comment #6) with the edit-file-prompt seems to be caused by the well knwon "&" that is inserted by KDE into the button text. The clicked button text is compared to "Create", which returns false since the new button string is "&Create" or something similar (but unknown). Most probably, this will affect other dialogs, too.

I see two general approaches here:

  1. We can manually insert a "&" in the button texts when calling a dialog resulting in exactly known strings for comparing the dialog's results after a button was clicked.
  2. Any "&" is removed from the clicked button text before it is returned by the dialog.
Torsten Lilge <ttl>
Project Member
Tue 09 Jan 2018 06:13:52 AM UTC, comment #6: 

Works for me, too, on Ubuntu 16.04 Unity and KDE Oxygen.

However, as a weirdness on KDE, when new files are not created without prompting (editor settings), the file dialog is not opened at all and the file is not created.

Torsten Lilge <ttl>
Project Member
Tue 09 Jan 2018 01:28:24 AM UTC, comment #5: 

Okay, it is clearly something related to my system.  I don't know what it is trying to check but it is very real for me.  Oh well, I just won't use that functionality.  But this does work just fine with my self-compiled 4.2.1 so there has to be something going on.

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 01:01:31 AM UTC, comment #4: 

Works for me on Fedora 27 / gnome
HG ID for this build is "5a10409695b7"

Do not see any delays.


Dmitri A. Sergatskov <dasergatskov>
Tue 09 Jan 2018 12:38:59 AM UTC, comment #3: 

works for me on Ubuntu 16.04
hg id  d6f06eeb8917

Doug Stewart <dastew>
Tue 09 Jan 2018 12:38:23 AM UTC, comment #2: 

Turns out it eventually works but the timeout is super long.  After that another call to the function seems to work normally.

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 12:23:55 AM UTC, comment #1: 

Clarification, it seems to be any of the uimenu routines such as uigetfile/uiputfile.  Something simpler like warndlg() works.

Rik <rik5>
Project Administrator
Tue 09 Jan 2018 12:21:05 AM UTC, original submission:  

This is a regression from 4.2.1 where this worked.

Start a new Octave GUI session

./run-octave -f
edit junk

A Save dialog window appears to be created, but the interior is blank and there is a beachball-like icon indicating a wait.  Eventually I just kill the process.

This happens to be with KDE and Oxygen widgets if that matters.

Rik <rik5>
Project Administrator


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

Attach Files:

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 mmuetzel (Posted a comment)
  • -email is unavailable- added by andy1978 (Posted a comment)
  • -email is unavailable- added by apjanke (Posted a comment)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by rik5
  • -email is unavailable- added by ttl (Posted a comment)
  • -email is unavailable- added by dasergatskov (Posted a comment)
  • -email is unavailable- added by dastew (Posted a comment)
  • -email is unavailable- added by rik5 (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 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2018-02-11 rik5 Severity3 - Normal => 5 - Blocker
    2018-01-09 rik5 StatusWorks For Me => Confirmed
        Carbon-Copy- => Added jwe
    2018-01-09 rik5 StatusNone => Works For Me
    2018-01-09 rik5 SummaryGUI hangs on use of edit() => GUI hangs on use of uigetfile/uiputfile

    Back to the top

    Powered by Savane 3.5