Use robust_relative_extent() iso. extent() for broken beam end.
--- /dev/null
+\header
+{
+ texidoc = "Broken beams have sane endings even if grobs
+ are not present at the broken end. "
+
+}
+
+\version "2.11.18"
+
+\new Staff \with {
+ \remove Bar_engraver
+ \override Beam #'breakable = ##t
+} {
+ \time 1/8
+ c'32 [
+ c'32
+ c'32
+ c'32
+ \break
+ c'32
+ c'32
+ c'32
+ c'32 ]
+}
+
+
+
&& me->get_bound (event_dir)->break_status_dir ())
{
current.horizontal_[event_dir]
&& me->get_bound (event_dir)->break_status_dir ())
{
current.horizontal_[event_dir]
- = (me->get_bound (event_dir)->extent (commonx, X_AXIS)[RIGHT]
+ = (robust_relative_extent (me->get_bound (event_dir), commonx, X_AXIS)[RIGHT]
+ event_dir * break_overshoot[event_dir]);
}
else
+ event_dir * break_overshoot[event_dir]);
}
else