From: Fred Pierresteguy Date: Tue, 15 Feb 1994 13:59:18 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: emacs-19.34~9900 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=19240c203a1954740cc3a577f3e83f60762134cf;p=emacs.git *** empty log message *** --- diff --git a/lwlib/lwlib-Xlw.c b/lwlib/lwlib-Xlw.c index d34a012ae3c..b7268bc12d0 100644 --- a/lwlib/lwlib-Xlw.c +++ b/lwlib/lwlib-Xlw.c @@ -88,6 +88,9 @@ xlw_create_menubar (instance) instance->parent, XtNmenu, instance->info->val, 0); + + XtFree (tem); + XtAddCallback (widget, XtNopen, pre_hook, (XtPointer)instance); XtAddCallback (widget, XtNselect, pick_hook, (XtPointer)instance); return widget; @@ -101,13 +104,23 @@ xlw_create_popup_menu (instance) XtCreatePopupShell (instance->info->name, overrideShellWidgetClass, instance->parent, NULL, 0); - Widget widget = + Widget widget; + + widget_value *tem = (widget_value *) XtMalloc (sizeof (widget_value)); + + /* _XtCreate is freeing the object we passed, + so make a copy that we free later. */ + bcopy (instance->info->val, tem, sizeof (widget_value)); + + widget = XtVaCreateManagedWidget ("popup", xlwMenuWidgetClass, popup_shell, XtNmenu, instance->info->val, XtNhorizontal, False, 0); + XtFree (tem); + XtAddCallback (widget, XtNselect, pick_hook, (XtPointer)instance); return popup_shell;