:: commit bf23488fd52725a49d17253ff302b8abbefb0284

peko <82322282+lightning-speed@users.noreply.github.com> — 2022-06-19 10:57

parents: a2fe0117d5

Update menu.c

diff --git a/common/menu.c b/common/menu.c
index 676b5bee..14472184 100644
--- a/common/menu.c
+++ b/common/menu.c
@@ -414,6 +414,7 @@ refresh:
     term_double_buffer_flush();
 
     int c = getchar();
+    size_t buffer_len = strlen(buffer);
     switch (c) {
         case GETCHAR_CURSOR_DOWN:
             cursor_offset = get_next_line(cursor_offset, buffer);
@@ -427,7 +428,7 @@ refresh:
             }
             break;
         case GETCHAR_CURSOR_RIGHT:
-            if (cursor_offset < strlen(buffer)) {
+            if (cursor_offset < buffer_len) {
                 cursor_offset++;
             }
             break;
@@ -460,9 +461,9 @@ refresh:
             editor_no_term_reset ? editor_no_term_reset = false : reset_term();
             return NULL;
         default:
-            if (strlen(buffer) < EDITOR_MAX_BUFFER_SIZE - 1) {
+            if (buffer_len < EDITOR_MAX_BUFFER_SIZE - 1) {
                 if (isprint(c) || c == '\n') {
-                    for (size_t i = strlen(buffer); ; i--) {
+                    for (size_t i = buffer_len; ; i--) {
                         buffer[i+1] = buffer[i];
                         if (i == cursor_offset)
                             break;
tab: 248 wrap: offon