Bug 1216312 - LilyPond crashes with Ghostscript 9.16
Summary: LilyPond crashes with Ghostscript 9.16
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: fontconfig
Version: 22
Hardware: Unspecified
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Akira TAGOH
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-04-29 05:41 UTC by Martin Tarenskeen
Modified: 2015-06-09 13:10 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-06-09 13:10:25 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Attachment from mailing list. (1.14 KB, patch)
2015-05-29 12:08 UTC, Gwyn Ciesla
no flags Details | Diff

Description Martin Tarenskeen 2015-04-29 05:41:31 UTC
Description of problem:
Lilypond crashes on every input file

Version-Release number of selected component (if applicable):
2.19.18-1

How reproducible:
always

Steps to Reproduce:
1. compile a *.ly file

Actual results:
crash

Expected results:
the *.ly file should produce a PDF file

Additional info:
Ghostscript 9.16 might be the problem. LilyPond 2.19.18 used to work fine with GS 9.15
Rebuilding against GS 9.16 might fix the issue

Comment 1 Gwyn Ciesla 2015-04-30 12:14:38 UTC
Does this occur with the 2.19.19 build in updates-testing?

Comment 2 Martin Tarenskeen 2015-04-30 12:59:43 UTC
yes. Lilypond is still not usable on F22 :-( 

If I run: 

lilypond foo.ly

the output is:

Warning: '(gs -g -dSAFER -dDEVICEWIDTHPOINT=595.28 -dDEVICEHEIGHTPOINT=841,89 -dCompatibilityLevel=1.4 -dNOPAUSE -dBATH -r1200 -sDEVICE=pdfwrite -sOutputFile=./foo.pdf -c.setpdfwrite --ffoo.ps)' failed

And the resulting foo.pdf shows an empty page when viewed with gs or evince.

the file foo.ly can be any lilypond file but I tested with the following content:

\version "2.19.19"
\score {
  \new Staff {
    { c'4 d' e' f' }
  }
  \layout {}
}

I don't know if it is a bug that should be fixed upstream in LilyPond or Ghostscript or somewhere inbetween?

Comment 3 Gwyn Ciesla 2015-04-30 15:02:49 UTC
Since this works perfectly with 2.19.19 on f21 with ghostscript 9.15, it's a ghostscript issue.

Comment 4 Martin Tarenskeen 2015-04-30 22:43:21 UTC
(In reply to Jon Ciesla from comment #3)
> Since this works perfectly with 2.19.19 on f21 with ghostscript 9.15, it's a
> ghostscript issue.

Not necessarily: Apparently something has changed between GS 9.15 and 9.16 that upsets LilyPond. That doesn't tell what needs fixing: GS or LP.
But it surely needs fixing.

Comment 5 Gwyn Ciesla 2015-05-29 12:07:10 UTC
Lilypond user on lilypond mailing list suspects pango:

> The Fedora 22 package fails for everyone, the www.lilypond.org version
> works.
>
> I tried this minimal example:
>
> % f22test.ly
> \version "2.19.21"
> {c'}
>
> And then did
>
> $ lilypond --ps --verbose f22.ly &> f22test1.txt
> $ ps2pdf14 f22test.ps f22test.pdf &> f22test2.txt
>
> results: see attachment.
> f22test1.txt f22test2.txt f22test.ps

Thank you for your files.

I suspect an issue of pango package of fedora 22.

First, I've tried your f22test.ps on my environment with gs-9.15.
It is failed. That is, it is not gs-9.16's issue.
The result is following.

```
$ ps2pdf14 f22test.ps f22test.pdf
Error: /undefinedresult in --glyphshow--
Operand stack:
   0.6146   5.6906   -2.8453   space
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1967   1   3   %oparray_pop   1966   1   3   %oparray_pop   1950   1   3   %oparray_pop   1836   1   3   %oparray_pop   --nostringval--   %errorexec_pop   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   0   --nostringval--   %repeat_continue   --nostringval--
Dictionary stack:
   --dict:1186/1684(ro)(G)--   --dict:0/20(G)--   --dict:108/200(L)--
Current allocation mode is local
Last OS error: No such file or directory
Current file position is 131424
GPL Ghostscript 9.15: Unrecoverable error, exit code 1

```

Then, I've found problems of f22test.ps.
Broken f22test.ps sets font size to zero.
Using the patch file for f22test.ps that is attached to this mail,
ps2pdf14 is succeed.

If I understand correctly, LilyPond gets the font size from pango.
www.lilypond.org version LilyPond bundles pango that has no problem,
and always uses it.

Comment 6 Gwyn Ciesla 2015-05-29 12:08:03 UTC
Created attachment 1032040 [details]
Attachment from mailing list.

Comment 7 Gwyn Ciesla 2015-05-31 18:53:35 UTC
Tried updating ghostscript locally to latest git, no help.  There is a new release of pango, trying that locally.  If it works I'll build and push for rawhide and f22.

Comment 8 Gwyn Ciesla 2015-05-31 19:40:47 UTC
Updated pango doesn't help either.

Comment 9 Gwyn Ciesla 2015-06-02 19:31:42 UTC
From a user:

lilypond: /home/gub/NewGub/gub/target/linux-64/src/lilypond-git.sv.gnu.org--lilypond.git-release-unstable/flower/include/interval.hh:226: T Interval_t<T>::center() const [with T = double]: Assertion `!is_empty ()' failed.

Occurs only on lilypond 2.19.21 and up.

Comment 10 Gwyn Ciesla 2015-06-09 13:10:25 UTC
Fixed by fontconfig fontconfig-2.11.94-1.fc22.


Note You need to log in before you can comment on or make changes to this bug.