]> git.neil.brown.name Git - edlib.git/commitdiff
messageline: treat an empty message as message-removal.
authorNeilBrown <neil@brown.name>
Fri, 23 Jun 2023 07:17:16 +0000 (17:17 +1000)
committerNeilBrown <neil@brown.name>
Wed, 28 Jun 2023 07:51:41 +0000 (17:51 +1000)
If a Message command provides a zero-lenth message, remove any current
message rather than setting a explicit empty message.  This allows a
default to appear.

Signed-off-by: NeilBrown <neil@brown.name>
lib-messageline.c
tests.d/00-basic

index b460d9abe72926c676b849553136717b3fa2cc59..38f518b5310f19ae4d22b75c01bf09832ac919ef 100644 (file)
@@ -79,14 +79,20 @@ DEF_CMD(messageline_msg)
                }
                if (strcmp(ci->key, "Message:modal") == 0) {
                        free(mli->modal);
-                       mli->modal = strdup(ci->str);
+                       if (ci->str[0])
+                               mli->modal = strdup(ci->str);
+                       else
+                               mli->modal = NULL;
                } else {
                        free(mli->message);
-                       mli->message = strdup(ci->str);
+                       if (ci->str[0])
+                               mli->message = strdup(ci->str);
+                       else
+                               mli->message = NULL;
                        /* x==0 check ensures we only append message once when
                         * it comes in via a broadcast notification
                         */
-                       if (ci->x == 0 && mli->log)
+                       if (ci->x == 0 && mli->log && ci->str[0])
                                call("doc:log:append", mli->log,
                                     0, NULL, ci->str);
                }
index c8c624b1b5c02f045222b599f7d60d0a4ba256eb..ddd61f32d8d149247e0bc34e17a7114d285c2a08 100644 (file)
@@ -552,7 +552,7 @@ Display 80,30 C75DC08E4E11119316EAE1D2121340F1 19,2
 Key ":Down"
 Display 80,30 BFEDE38C97802B694CAC529C933B95EB 14,2
 Key ":A:Backspace"
-Display 80,30 6B3275E04C77584F9E1C909E7902D822 5,2
+Display 80,30 00A42957F180C50266C8875DC86B8B53 5,2
 Key "-d"
 Display 80,30 4D1EEFD308CCFB4E88474E265CE5B975 6,2
 Key "-i"
@@ -572,7 +572,7 @@ Display 80,30 2AA09FEFEDF600B1DF2DD2ED9DD14534 16,2
 Key ":Left"
 Display 80,30 6CD98BAF00C0148D9C5A8403AB6A0F53 19,2
 Key ":Enter"
-Display 80,30 558431EA4E0EC2686B5C4D2EED2078AC 1,3
+Display 80,30 015974AB421009735E6657A44B68B77E 1,3
 Key ":C-U"
 Display 80,30 4B1C47234051213271FED14393477B35 1,3
 Key ":C-X"
@@ -605,4 +605,4 @@ Key ":C-X"
 Display 80,30 84F4B35BF26F9D5EEBB67D572ADD0BBF 1,0
 Key ":C-C"
 Display 80,30 4790F2887DC559E9927F4059D9F4365D 1,0
-Close 1531
+Close 1530