From 1d63a3985005a45af468e5c9656de3d17fbb4ee3 Mon Sep 17 00:00:00 2001
From: Keith OHara <k-ohara5a5a@oco.net>
Date: Fri, 18 Mar 2011 00:22:28 -0700
Subject: [PATCH] lily/page-layout-problem.cc: Avoid repeats of a warning

---
 lily/page-layout-problem.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lily/page-layout-problem.cc b/lily/page-layout-problem.cc
index 636e937a72..fa4bd9c7b4 100644
--- a/lily/page-layout-problem.cc
+++ b/lily/page-layout-problem.cc
@@ -855,10 +855,12 @@ Page_layout_problem::get_spacing_spec (Grob *before, Grob *after, bool pure, int
 	{
 	  Direction before_affinity = to_dir (before->get_maybe_pure_property ("staff-affinity", pure, start, end));
 	  Direction after_affinity = to_dir (after->get_maybe_pure_property ("staff-affinity", pure, start, end));
-	  if (after_affinity > before_affinity)
+	  static bool warned = false;
+	  if (after_affinity > before_affinity
+	      && !warned && !pure)
 	    {
 	      warning (_ ("staff-affinities should only decrease"));
-	      after_affinity = before_affinity;
+	      warned = true;
 	    }
 	  if (before_affinity != UP)
 	    return before->get_maybe_pure_property ("nonstaff-nonstaff-spacing", pure, start, end);
-- 
2.39.5