diff options
-rw-r--r-- | lwlib/xlwmenu.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/lwlib/xlwmenu.c b/lwlib/xlwmenu.c index d06321257f9..a6e46584d65 100644 --- a/lwlib/xlwmenu.c +++ b/lwlib/xlwmenu.c @@ -33,6 +33,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ static int pointer_grabbed; static XEvent menu_post_event; +XFontStruct *xlwmenu_default_font; + static char xlwMenuTranslations [] = "<BtnDown>: start()\n\ @@ -1059,15 +1061,13 @@ release_shadow_gcs (mw) } static void -XlwMenuInitialize (request, new, args, num_args) +XlwMenuInitialize (request, mw, args, num_args) Widget request; - Widget new; + XlwMenuWidget mw; ArgList args; Cardinal *num_args; { /* Get the GCs and the widget size */ - XlwMenuWidget mw = (XlwMenuWidget)new; - XSetWindowAttributes xswa; int mask; @@ -1090,6 +1090,12 @@ XlwMenuInitialize (request, new, args, num_args) gray_bits, gray_width, gray_height, 1, 0, 1); + /* I don't understand why this ends up 0 sometimes, + but it does. This kludge works around it. + Can anyone find a real fix? -- rms. */ + if (mw->menu.font == 0) + mw->menu.font = xlwmenu_default_font; + make_drawing_gcs (mw); make_shadow_gcs (mw); |