Skip to content

Commit 2ebb430

Browse files
susinmotionthomasballinger
authored andcommitted
Inconsistent history message only shows up once
1 parent ccd793f commit 2ebb430

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

bpython/curtsiesfrontend/repl.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ def smarter_request_reload(desc):
309309

310310
self.request_paint_to_clear_screen = False # next paint should clear screen
311311
self.inconsistent_history = False # offscreen command yields different result from history
312-
self.history_messed_up = True # history error message displayed
312+
self.history_messed_up = False # history error message displayed
313313
self.last_events = [None] * 50 # some commands act differently based on the prev event
314314
# this list doesn't include instances of event.Event,
315315
# only keypress-type events (no refresh screen events etc.)
@@ -1028,16 +1028,16 @@ def paint(self, about_to_exit=False, user_quit=False):
10281028
arr[:history.height,:history.width] = history
10291029

10301030
else:
1031-
if self.inconsistent_history == True:
1032-
self.inconsistent_history = False
1031+
if self.inconsistent_history == True and self.history_messed_up == False:
1032+
self.history_messed_up = True
10331033
#if INCONSISTENT_HISTORY_MSG not in self.display_lines:
10341034
logger.debug(INCONSISTENT_HISTORY_MSG)
10351035
msg = INCONSISTENT_HISTORY_MSG
10361036
arr[0, 0:min(len(msg), width)] = [msg[:width]]
10371037
# self.scroll_offset -= 1
10381038

10391039
current_line_start_row = len(self.lines_for_display )- max(-1, self.scroll_offset)
1040-
1040+
self.inconsistent_history = False
10411041
if current_line_start_row < 0: #if current line trying to be drawn off the top of the screen
10421042
logger.debug(CONTIGUITY_BROKEN_MSG)
10431043
msg = CONTIGUITY_BROKEN_MSG
@@ -1268,7 +1268,7 @@ def reevaluate(self, insert_into_history=False):
12681268
old_display_lines_offscreen = old_display_lines[:len(self.display_lines) - num_lines_onscreen]
12691269
display_lines_offscreen = self.display_lines[:-num_lines_onscreen]
12701270

1271-
if old_display_lines_offscreen != display_lines_offscreen:
1271+
if old_display_lines_offscreen != display_lines_offscreen and self.history_messed_up == False:
12721272
self.scroll_offset=self.scroll_offset-(len(old_display_lines)-len(self.display_lines))
12731273

12741274
self.inconsistent_history = True

0 commit comments

Comments
 (0)