From: David Kastrup Date: Thu, 1 Dec 2011 23:15:01 +0000 (+0100) Subject: Make ly:parse-string-expression robust against bad location parameters X-Git-Tag: release/2.15.21-1~18 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=710206d06b88e43c1776aab303bb46d5889c8dcb;p=lilypond.git Make ly:parse-string-expression robust against bad location parameters --- diff --git a/lily/lily-parser-scheme.cc b/lily/lily-parser-scheme.cc index b433bf9ec4..5f5b5a26fa 100644 --- a/lily/lily-parser-scheme.cc +++ b/lily/lily-parser-scheme.cc @@ -224,19 +224,15 @@ LY_DEFINE (ly_parse_string_expression, "ly:parse-string-expression", Lily_parser *parser = unsmob_lily_parser (parser_smob); LY_ASSERT_TYPE (scm_is_string, ly_code, 2); string fn; - if (SCM_UNBNDP (filename)) + if (SCM_UNBNDP (filename) || !scm_is_string (filename)) fn = ""; - else { - LY_ASSERT_TYPE (scm_is_string, filename, 3); + else fn = ly_scm2string (filename); - } int ln; - if (SCM_UNBNDP (line)) + if (SCM_UNBNDP (line) || !scm_is_integer (line)) ln = 0; - else { - LY_ASSERT_TYPE (scm_is_integer, line, 4); + else ln = scm_to_int (line); - } if (!parser->lexer_->is_clean ()) {