From ae563977557909e2f7cc4ae3e653f30251126403 Mon Sep 17 00:00:00 2001
From: jan <jan>
Date: Mon, 24 Jun 2002 10:15:04 +0000
Subject: [PATCH] (setup_pedal_bracket): Bugfix: only dereference valid Grob.

---
 ChangeLog            |  3 +++
 lily/text-spanner.cc | 20 +++++++++++---------
 2 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 8247aec3d4..1af018c493 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2002-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
 
+	* lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
+	dereference valid Grob.
+
 	* configure.in: Quoting fixes.
 
 2002-06-24  Han-Wen  <hanwen@cs.uu.nl>
diff --git a/lily/text-spanner.cc b/lily/text-spanner.cc
index a6cb05fe93..53fb7ff19a 100644
--- a/lily/text-spanner.cc
+++ b/lily/text-spanner.cc
@@ -244,17 +244,19 @@ Text_spanner::setup_pedal_bracket(Spanner *me)
   if ( to_boolean (me->get_grob_property ("text-start")) )
     {
       height[LEFT] = 0;
-      Grob * textbit = unsmob_grob (me->get_grob_property("pedal-text"));
       extra_short = padding;
-      if (textbit->internal_has_interface(ly_symbol2scm("text-interface"))) 
-	// for plain text, e.g., Sost. Ped.
+      if (Grob *textbit = unsmob_grob (me->get_grob_property("pedal-text")))
 	{
-	  SCM text  =  textbit->get_grob_property("text"); 
-	  if (gh_string_p (text)) {
-	    SCM properties = Font_interface::font_alist_chain (me);
-	    Molecule mol = Text_item::text2molecule (me, text, properties);
-	    extra_short += mol.extent(X_AXIS).length() / 2;
-	  }
+	  if (textbit->internal_has_interface(ly_symbol2scm("text-interface")))
+	    // for plain text, e.g., Sost. Ped.
+	    {
+	      SCM text  =  textbit->get_grob_property("text"); 
+	      if (gh_string_p (text)) {
+		SCM properties = Font_interface::font_alist_chain (me);
+		Molecule mol = Text_item::text2molecule (me, text, properties);
+		extra_short += mol.extent(X_AXIS).length() / 2;
+	      }
+	    }
 	}
       shorten[RIGHT] -= thick;
     }
-- 
2.39.5