diff options
author | fvogelnew1@free.fr <fvogel> | 2015-11-08 20:54:16 (GMT) |
---|---|---|
committer | fvogelnew1@free.fr <fvogel> | 2015-11-08 20:54:16 (GMT) |
commit | 5ae05b363d9d7609b0bd096ade09f8c7c674a8da (patch) | |
tree | 3c47999b22defcaefabb3c32718df5fea64b94b7 /generic/tkMenu.c | |
parent | 5ed3eb874d8ba1c8436c6259361b758315487da2 (diff) | |
parent | fa4526c736eef6a43dc6bf1f004207e742107fca (diff) | |
download | tk-5ae05b363d9d7609b0bd096ade09f8c7c674a8da.zip tk-5ae05b363d9d7609b0bd096ade09f8c7c674a8da.tar.gz tk-5ae05b363d9d7609b0bd096ade09f8c7c674a8da.tar.bz2 |
Fixed [2160206fff] - Panic when posting a menu of type menubar
Diffstat (limited to 'generic/tkMenu.c')
-rw-r--r-- | generic/tkMenu.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/generic/tkMenu.c b/generic/tkMenu.c index 354d329..d24516f 100644 --- a/generic/tkMenu.c +++ b/generic/tkMenu.c @@ -885,9 +885,14 @@ MenuWidgetObjCmd( * Tearoff menus are posted differently on Mac and Windows than * non-tearoffs. TkpPostMenu does not actually map the menu's window * on those platforms, and popup menus have to be handled specially. + * Also, menubar menues are not intended to be posted (bug 1567681, + * 2160206). */ - if (menuPtr->menuType != TEAROFF_MENU) { + if (menuPtr->menuType == MENUBAR) { + Tcl_AppendResult(interp, "a menubar menu cannot be posted", NULL); + return TCL_ERROR; + } else if (menuPtr->menuType != TEAROFF_MENU) { result = TkpPostMenu(interp, menuPtr, x, y); } else { result = TkPostTearoffMenu(interp, menuPtr, x, y); |