From b6be421a1f2e512f22080cb3b86a8f3a7aa61306 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Thu, 23 Nov 2023 15:16:27 +0100 Subject: [PATCH] Added safety when calling Text_Display methods - before assigning a buffer (Github #845) - also fixed a warning form unused arg in Fl_Terminal --- FL/Fl_Terminal.H | 2 +- src/Fl_Text_Display.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/FL/Fl_Terminal.H b/FL/Fl_Terminal.H index 4cd53bb4a..ff0062000 100644 --- a/FL/Fl_Terminal.H +++ b/FL/Fl_Terminal.H @@ -455,7 +455,7 @@ protected: void sgr_italic(bool val) { attrib_ = onoff(val, Fl_Terminal::ITALIC); } // e.g. ESC[3m void sgr_underline(bool val) { attrib_ = onoff(val, Fl_Terminal::UNDERLINE); } // e.g. ESC[3m void sgr_dbl_under(bool val) { attrib_ = onoff(val, Fl_Terminal::UNDERLINE); } // e.g. ESC[21m (TODO!) - void sgr_blink(bool val) { /* NOT IMPLEMENTED */ } // e.g. ESC[5m + void sgr_blink(bool val) { (void)val; /* NOT IMPLEMENTED */ } // e.g. ESC[5m void sgr_inverse(bool val) { attrib_ = onoff(val, Fl_Terminal::INVERSE); } // e.g. ESC[7m void sgr_strike(bool val) { attrib_ = onoff(val, Fl_Terminal::STRIKEOUT); } // e.g. ESC[9m }; diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx index d1f7bb035..35545614e 100644 --- a/src/Fl_Text_Display.cxx +++ b/src/Fl_Text_Display.cxx @@ -1861,7 +1861,7 @@ int Fl_Text_Display::get_absolute_top_line_number() const { Does nothing if the absolute top line number is not being maintained. */ void Fl_Text_Display::absolute_top_line_number(int oldFirstChar) { - if (maintaining_absolute_top_line_number()) { + if (maintaining_absolute_top_line_number() && buffer()) { if (mFirstChar < oldFirstChar) mAbsTopLineNum -= buffer()->count_lines(mFirstChar, oldFirstChar); else