diff --git a/gtk2_ardour/tempo_lines.cc b/gtk2_ardour/tempo_lines.cc
index e8bd034..04e584c 100644
--- a/gtk2_ardour/tempo_lines.cc
+++ b/gtk2_ardour/tempo_lines.cc
@@ -213,7 +213,7 @@ TempoLines::draw (ARDOUR::TempoMap::BBTPointList& points, double frames_per_unit
 				}
 
 				// Create a new line
-			} else if (_lines.size() < needed || _lines.size() < MAX_CACHED_LINES) {
+			} else if (_lines.size() < needed && _lines.size() < MAX_CACHED_LINES) {
 				//cout << "*** CREATING LINE" << endl;
 				assert(_lines.find(xpos) == _lines.end());
 				line = new ArdourCanvas::SimpleLine (*_group);
