# HG changeset patch # User Christian Brabandt # Date 1711476003 -3600 # Node ID d299b4b3099f3fe5c657b6e0ec176c4139978f2e # Parent db219dbcb076403e3834a56e0d80a51aeade001b patch 9.1.0210: Motif: leaking memory when mui_mch_dialog() fails Commit: https://github.com/vim/vim/commit/9ccc2972373c8310c20ae7621b9c634d0dc43e26 Author: Christian Brabandt Date: Tue Mar 26 18:44:48 2024 +0100 patch 9.1.0210: Motif: leaking memory when mui_mch_dialog() fails Problem: Motif: leaking memory when mui_mch_dialog() fails (LuMingYinDetect) Solution: When allocating the label using the XmStringCreateLtoR() function fails, before returning also free the allocated buttons pointer. fixes: #14247 closes: #14280 Signed-off-by: Christian Brabandt diff --git a/src/gui_motif.c b/src/gui_motif.c --- a/src/gui_motif.c +++ b/src/gui_motif.c @@ -2732,7 +2732,10 @@ gui_mch_dialog( // Motif. label = XmStringCreateLtoR((char *)message, STRING_TAG); if (label == NULL) + { + vim_free(buttons); return -1; + } w = XtVaCreateManagedWidget("dialogMessage", xmLabelGadgetClass, form, XmNlabelString, label, diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -705,6 +705,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 210, +/**/ 209, /**/ 208,