Don Heap spotted that our heuristics for dealing with IPv6 literal addresses
[sgt/putty] / terminal.c
index 7552e39..311df18 100644 (file)
@@ -1535,6 +1535,11 @@ void term_size(Terminal *term, int newrows, int newcols, int newsavelines)
        newsavelines == term->savelines)
        return;                        /* nothing to do */
 
+    /* Behave sensibly if we're given zero (or negative) rows/cols */
+
+    if (newrows < 1) newrows = 1;
+    if (newcols < 1) newcols = 1;
+
     deselect(term);
     swap_screen(term, 0, FALSE, FALSE);
 
@@ -2748,7 +2753,7 @@ static void term_out(Terminal *term)
                     * Perform an actual beep if we're not overloaded.
                     */
                    if (!term->cfg.bellovl || !term->beep_overloaded) {
-                       beep(term->frontend, term->cfg.beep);
+                       do_beep(term->frontend, term->cfg.beep);
 
                        if (term->cfg.beep == BELL_VISUAL) {
                            term_schedule_vbell(term, FALSE, 0);