bugGNU Octave - Bugs: bug #55647, crash, hang, error or corrupted...


bug #55647: crash, hang, error or corrupted output when printing some demos to EPS

Submitter:  Pantxo Diribarne <pantxo>
Submitted:  Tue 05 Feb 2019 10:12:22 PM UTC
Category:  Plotting with OpenGL Severity:  4 - Important
Priority:  5 - Normal Item Group:  Segfault, Bus Error, etc.
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  * Open
Release:  * dev Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup

Jump to the original submission

Wed 11 Nov 2020 02:52:51 PM UTC, comment #11: 

Sorry. Got this wrong: We postponed defaulting to "-tight" for bug #48689. That bug does not seem to be resolved yet, too.
So the conclusion is the same: Should we revert to "-loose" again?

Markus Mützel <mmuetzel>
Group administrator
Wed 11 Nov 2020 02:42:50 PM UTC, comment #10: 

I'm wondering if we should postpone defaulting to "-tight" for another version (or until this is resolved).

We did this for the same reason for Octave 5.

Markus Mützel <mmuetzel>
Group administrator
Wed 11 Nov 2020 02:11:37 PM UTC, comment #9: 

While unfortunate, I don't think this particular bug should hold up the Octave release.  It is now been ~20 months since the 5.1 release.  We really need to get this out.

Rik <rik5>
Group administrator
Wed 11 Nov 2020 01:01:38 PM UTC, comment #8: 

The original example leads to intermittent hangs (of gs.exe) and ghostscript errors with Octave 6.0.92 on Windows for me.

Do we need to take any action before Octave 6 will be released?

Markus Mützel <mmuetzel>
Group administrator
Tue 26 Feb 2019 02:31:26 AM UTC, comment #7: 

Since the default was reverted back to "-loose" for the 5.1 release, this bug no longer affects Octave 5.1, right? Marking as "dev".

Mike Miller <mtmiller>
Group Member
Wed 06 Feb 2019 10:22:06 PM UTC, comment #6: 

@Rik: "axis auto" is OK even though it will at most avoid a crash for us, testers and developers.

Unfortunately bug #48689 is a really serious bug:

  • it affects most users: Mac, MXE, Linux with Gallium driver
  • it is easy to trigger: a single triangle drawn partly outside the axes border is enough to get a very bad vector output.
  • it is actually a bug in MESA gallium driver: colors reported in the feedback buffer to gl2ps are corrupted. I don't think anyone reported this bug to MESA but I fear it won't get much attention since it touches the deprecated GL_FEEDBACK mode.

Pantxo Diribarne <pantxo>
Group Member
Wed 06 Feb 2019 08:03:31 PM UTC, comment #5: 

As a short term fix, would it be acceptable to add "axis auto" in hold.m's BIST demo #6?

This seems like a subtle enough problem that it may not be fixed until the first bug fix release for 5.1.

Rik <rik5>
Group administrator
Wed 06 Feb 2019 07:44:21 PM UTC, comment #4: 

@Rik: Yes the problem is present in default and may have been there for a while: before Octave 5, the default was "-loose" so we did not use epstool and probably just didn't notice the misbehavior.

@Dmitri: epstool is ran through a pipe which is fed directly with the original gl2ps-generated EPS output. Then when closing the pipe, fclose only returns when epstool has finished. So I am pretty sure there cannot be a race condition here.

Now about the second issue, the bad bbox when using "-loose", can one of you reproduce it? Actually I am only able to trigger it on my most recent system (linux Mint 19.1, whith Ghostscript 9.26 among others). On debian stretch the bbox is OK after

demo hold 6
axis auto
print -loose -depsc toto.eps

Pantxo Diribarne <pantxo>
Group Member
Wed 06 Feb 2019 05:26:54 PM UTC, comment #3: 

Yes. I am testing against stable tip.
eb1d4a619260 (stable) tip
just now hanged at ii=3.
But subsequent run manged to finish all 100 loops.


Dmitri A. Sergatskov <dasergatskov>
Wed 06 Feb 2019 04:26:36 PM UTC, comment #2: 

Is this a problem for the upcoming 5.1 release as well?  The bug is marked against the development version of Octave.

Rik <rik5>
Group administrator
Tue 05 Feb 2019 10:54:52 PM UTC, comment #1: 

Any possibility of race condition? Like sending eps file that is still being written to epstool?


Dmitri A. Sergatskov <dasergatskov>
Tue 05 Feb 2019 10:12:22 PM UTC, original submission:  

"demo hold 6" quite reliably causes problems when printing to EPS format (see bug #55529)

for ii=1:100
  demo hold 6;
  ## axis auto
  print toto.eps -depsc ## -loose
  close all

This leads to either a crash of Octave, a hang with Ghostscript consuming 100% CPU or a simple error due to Ghostscript returning a bad status.

This example doesn't crash, hang or error out if I use "axis auto" prior to printing, so that bug #48689 doesn't come into play. Though, the output figure has a wrong bounding box. See attached "bad_bbox.eps".

This example works perfectly well when using the "-loose" print option (which used to be the default in 4.4). So it looks like epstool has problems cropping some of our gl2ps generated EPS files.

Pantxo Diribarne <pantxo>
Group Member


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

Attach Files:

Attached Files
file #46188:  bad_bbox.eps added by pantxo (252KiB - image/x-eps)


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 rik5 (Posted a comment)
  • -email is unavailable- added by dasergatskov (Posted a comment)
  • -email is unavailable- added by pantxo (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 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-02-26 mtmiller Release5.0.91 dev
    2019-02-06 rik5 Releasedev 5.0.91
    2019-02-06 pantxo StatusNone Confirmed
    2019-02-05 pantxo Attached File- Added bad_bbox.eps, #46188

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code