1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-23 22:52:34 +01:00

Fixed a couple of crashing bugs generated by dereferencing of 0x0

pointers (added by the new modal loop code)
This commit is contained in:
dan
2001-01-10 04:54:22 +00:00
parent 1b41d56ad0
commit 61675a7e19

View File

@@ -11,7 +11,7 @@ alertPanelOnClick(WMWidget *self, void *clientData)
{ {
WMAlertPanel *panel = clientData; WMAlertPanel *panel = clientData;
WMBreakModalLoop(WMWidgetScreen(panel->othBtn)); WMBreakModalLoop(WMWidgetScreen(self));
if (self == panel->defBtn) { if (self == panel->defBtn) {
panel->result = WAPRDefault; panel->result = WAPRDefault;
} else if (self == panel->othBtn) { } else if (self == panel->othBtn) {
@@ -35,7 +35,7 @@ handleKeyPress(XEvent *event, void *clientData)
WMPerformButtonClick(panel->othBtn ? panel->othBtn : panel->altBtn); WMPerformButtonClick(panel->othBtn ? panel->othBtn : panel->altBtn);
} else { } else {
panel->result = WAPRDefault; panel->result = WAPRDefault;
WMBreakModalLoop(WMWidgetScreen(panel->othBtn)); WMBreakModalLoop(WMWidgetScreen(panel->win));
} }
} }
} }
@@ -106,7 +106,7 @@ WMCreateAlertPanel(WMScreen *scrPtr, WMWindow *owner,
panel = wmalloc(sizeof(WMAlertPanel)); panel = wmalloc(sizeof(WMAlertPanel));
memset(panel, 0, sizeof(WMAlertPanel)); memset(panel, 0, sizeof(WMAlertPanel));
panel->retKey = XKeysymToKeycode(scrPtr->display, XK_Return); panel->retKey = XKeysymToKeycode(scrPtr->display, XK_Return);
panel->escKey = XKeysymToKeycode(scrPtr->display, XK_Escape); panel->escKey = XKeysymToKeycode(scrPtr->display, XK_Escape);
@@ -123,12 +123,12 @@ WMCreateAlertPanel(WMScreen *scrPtr, WMWindow *owner,
(scrPtr->rootView->size.height - WMWidgetHeight(panel->win))/2); (scrPtr->rootView->size.height - WMWidgetHeight(panel->win))/2);
WMSetWindowTitle(panel->win, ""); WMSetWindowTitle(panel->win, "");
panel->vbox = WMCreateBox(panel->win); panel->vbox = WMCreateBox(panel->win);
WMSetBoxExpandsToParent(panel->vbox); WMSetBoxExpandsToParent(panel->vbox);
WMSetBoxHorizontal(panel->vbox, False); WMSetBoxHorizontal(panel->vbox, False);
WMMapWidget(panel->vbox); WMMapWidget(panel->vbox);
hbox = WMCreateBox(panel->vbox); hbox = WMCreateBox(panel->vbox);
WMSetBoxHorizontal(hbox, True); WMSetBoxHorizontal(hbox, True);
WMMapWidget(hbox); WMMapWidget(hbox);
@@ -291,7 +291,7 @@ handleKeyPress2(XEvent *event, void *clientData)
WMPerformButtonClick(panel->altBtn); WMPerformButtonClick(panel->altBtn);
} else { } else {
/* printf("got esc\n");*/ /* printf("got esc\n");*/
WMBreakModalLoop(WMWidgetScreen(panel->altBtn)); WMBreakModalLoop(WMWidgetScreen(panel->win));
panel->result = WAPRDefault; panel->result = WAPRDefault;
} }
} }
@@ -370,7 +370,7 @@ endedEditingObserver(void *observerData, WMNotification *notification)
if (panel->altBtn) if (panel->altBtn)
WMPerformButtonClick(panel->altBtn); WMPerformButtonClick(panel->altBtn);
else { else {
WMBreakModalLoop(WMWidgetScreen(panel->defBtn)); WMBreakModalLoop(WMWidgetScreen(panel->win));
panel->result = WAPRDefault; panel->result = WAPRDefault;
} }
break; break;