Patch 8.2.4621
Problem: Crash when using the tabline right-click menu.
Solution: Use XtPointer for XmNuserData. (closes #10009)
Files: src/gui_motif.c
*** ../vim-8.2.4620/src/gui_motif.c 2022-03-13 14:44:59.396422421 +0000
--- src/gui_motif.c 2022-03-24 17:59:11.450028550 +0000
***************
*** 142,153 ****
XtPointer client_data UNUSED,
XtPointer call_data UNUSED)
{
! int cmd, tab_idx;
XtVaGetValues(w, XmNuserData, &cmd, NULL);
XtVaGetValues(tabLine_menu, XmNuserData, &tab_idx, NULL);
! send_tabline_menu_event(tab_idx, cmd);
}
/*
--- 142,153 ----
XtPointer client_data UNUSED,
XtPointer call_data UNUSED)
{
! XtPointer cmd, tab_idx;
XtVaGetValues(w, XmNuserData, &cmd, NULL);
XtVaGetValues(tabLine_menu, XmNuserData, &tab_idx, NULL);
! send_tabline_menu_event((int)(long)tab_idx, (int)(long)cmd);
}
/*
***************
*** 254,260 ****
XtVaGetValues(tab_w, XmNpageNumber, &tab_idx, NULL);
}
! XtVaSetValues(tabLine_menu, XmNuserData, tab_idx, NULL);
XtVaGetValues(tabLine_menu, XmNchildren, &children, XmNnumChildren,
&numChildren, NULL);
XtManageChildren(children, numChildren);
--- 254,260 ----
XtVaGetValues(tab_w, XmNpageNumber, &tab_idx, NULL);
}
! XtVaSetValues(tabLine_menu, XmNuserData, (XtPointer)(long)tab_idx, NULL);
XtVaGetValues(tabLine_menu, XmNchildren, &children, XmNnumChildren,
&numChildren, NULL);
XtManageChildren(children, numChildren);
***************
*** 517,523 ****
// Add the buttons to the tabline popup menu
n = 0;
! XtSetArg(args[n], XmNuserData, TABLINE_MENU_CLOSE); n++;
xms = XmStringCreate((char *)"Close tab", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "Close", args, n);
--- 517,523 ----
// Add the buttons to the tabline popup menu
n = 0;
! XtSetArg(args[n], XmNuserData, (XtPointer)TABLINE_MENU_CLOSE); n++;
xms = XmStringCreate((char *)"Close tab", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "Close", args, n);
***************
*** 526,532 ****
XmStringFree(xms);
n = 0;
! XtSetArg(args[n], XmNuserData, TABLINE_MENU_NEW); n++;
xms = XmStringCreate((char *)"New Tab", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "New Tab", args, n);
--- 526,532 ----
XmStringFree(xms);
n = 0;
! XtSetArg(args[n], XmNuserData, (XtPointer)TABLINE_MENU_NEW); n++;
xms = XmStringCreate((char *)"New Tab", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "New Tab", args, n);
***************
*** 535,541 ****
XmStringFree(xms);
n = 0;
! XtSetArg(args[n], XmNuserData, TABLINE_MENU_OPEN); n++;
xms = XmStringCreate((char *)"Open tab...", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "Open tab...", args, n);
--- 535,541 ----
XmStringFree(xms);
n = 0;
! XtSetArg(args[n], XmNuserData, (XtPointer)TABLINE_MENU_OPEN); n++;
xms = XmStringCreate((char *)"Open tab...", STRING_TAG);
XtSetArg(args[n], XmNlabelString, xms); n++;
button = XmCreatePushButton(tabLine_menu, "Open tab...", args, n);
*** ../vim-8.2.4620/src/version.c 2022-03-24 15:24:41.702509705 +0000
--- src/version.c 2022-03-24 17:55:12.122301619 +0000
***************
*** 752,753 ****
--- 752,755 ----
{ /* Add new patch number below this line */
+ /**/
+ 4621,
/**/
--
Have you heard about the new Barbie doll? It's called Divorce
Barbie. It comes with most of Ken's stuff.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/20220324180751.D030B1C0A2F%40moolenaar.net.