Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1232)

Issue 332470043: Issue #5246: Make empty scores abort engraving process (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
6 years, 4 months ago by Ebe123
Modified:
5 years, 10 months ago
Reviewers:
dak, dan, lists
CC:
lilypond-devel_gnu.org
Visibility:
Public.

Description

Issue #5246: Make empty scores abort engraving process This change makes the "no music" warning fatal during the output process. Issue: 5246

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -3 lines) Patch
M lily/global-context-scheme.cc View 2 chunks +2 lines, -3 lines 0 comments Download

Messages

Total messages: 6
Ebe123
It's a bit odd to announce successful engraving of nothing.
6 years, 4 months ago (2017-12-22 04:06:29 UTC) #1
dan_faithful.be
On Dec 21, 2017, at 23:06, beauleetienne0@gmail.com wrote: > > @@ -110,8 +110,7 @@ LY_DEFINE ...
6 years, 4 months ago (2017-12-22 14:18:32 UTC) #2
dak
Dan Eble <dan@faithful.be> writes: > On Dec 21, 2017, at 23:06, beauleetienne0@gmail.com wrote: >> >> ...
6 years, 4 months ago (2017-12-22 14:42:47 UTC) #3
lists_ursliska.de
Am 22. Dezember 2017 15:42:39 MEZ schrieb David Kastrup <dak@gnu.org>: >Dan Eble <dan@faithful.be> writes: > ...
6 years, 4 months ago (2017-12-22 14:47:09 UTC) #4
dak
Urs Liska <lists@ursliska.de> writes: > Am 22. Dezember 2017 15:42:39 MEZ schrieb David Kastrup <dak@gnu.org>: ...
6 years, 4 months ago (2017-12-22 15:07:21 UTC) #5
dak
6 years, 4 months ago (2017-12-22 15:12:01 UTC) #6
David Kastrup <dak@gnu.org> writes:

> Urs Liska <lists@ursliska.de> writes:
>
>> Am 22. Dezember 2017 15:42:39 MEZ schrieb David Kastrup <dak@gnu.org>:
>>>Dan Eble <dan@faithful.be> writes:
>>>
>>>> On Dec 21, 2017, at 23:06, beauleetienne0@gmail.com wrote:
>>>>> 
>>>>> @@ -110,8 +110,7 @@ LY_DEFINE (ly_interpret_music_expression,
>>>"ly:interpret-music-expression",
>>>>> 
>>>>>   if (!iter->ok ())
>>>>>     {
>>>>> -      warning (_ ("no music found in score"));
>>>>> -      /* todo: should throw exception. */
>>>>> +      error (_ ("no music found in score"));
>>>>>       return SCM_BOOL_F;
>>>>>     }
>>>>
>>>> Looking at this in isolation, I wonder whether “no music found” is
>>>the
>>>> only reason that iter might not be OK; in other words, was the
>>>message
>>>> appropriate before you arrived?
>>>
>>>\new Voice { }
>>>
>>>_is_ arguably music.  The other error message before is actually just
>>>nonsensical since LY_ASSERT_SMOB already catches the respective
>>>condition.  I think we should just let this one complete properly (and
>>>thus also get an image/PDF) though with a warning.
>>>
>>>I actually thought I did change this at one time.  At any rate, a
>>>_fatal_ error at least seems silly.  There is no reason not to continue
>>>here.
>>
>> Yes, there may be valid reasons to compile files with no music in them.
>
> This actually doesn't trigger for files with no music in them but for
> music with no (iterable) music in it.

Actually, if I remove the premature return, I get for

\new Voice {}

-*- mode: compilation; default-directory: "/tmp/" -*-
Compilation started at Fri Dec 22 16:10:13

/usr/local/tmp/lilypond/out/bin/lilypond blabla.ly 
GNU LilyPond 2.21.0
Processing `blabla.ly'
Parsing...
blabla.ly:1: warning: no \version statement found, please add

\version "2.21.0"

for future compatibility
Interpreting music...
warning: no music found in score
[0]
Preprocessing graphical objects...
programming error: No spring between column 0 and next one
continuing, cross fingers
programming error: No spring between column 0 and next one
continuing, cross fingers
programming error: didn't find a vertical alignment in this system
continuing, cross fingers
programming error: No spring between column 0 and next one
continuing, cross fingers
Finding the ideal number of pages...
Fitting music on 1 page...
Drawing systems...
programming error: No spring between column 0 and next one
continuing, cross fingers
programming error: system with empty extent
continuing, cross fingers
Layout output to `/tmp/lilypond-vZDPJH'...
Converting to `blabla.pdf'...
Deleting `/tmp/lilypond-vZDPJH'...
Success: compilation successfully completed

Compilation finished at Fri Dec 22 16:10:14

and a visibly empty file (no idea whether there is off-screen material
getting typeset).  So that's not particularly useful but at least it
touches the PDF file.

-- 
David Kastrup
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b