From 75f94517029dfba50dda7770505fec79cc4b9dab Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Sat, 25 Feb 2023 15:40:21 +0100 Subject: [PATCH] Fix bug 624 also for MS Windows by moving DestroyGraph() from WM_CLOSE to RemoveWindow() --- src/frontend/wdisp/windisp.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/frontend/wdisp/windisp.c b/src/frontend/wdisp/windisp.c index 93716f3e9..33a238fcd 100644 --- a/src/frontend/wdisp/windisp.c +++ b/src/frontend/wdisp/windisp.c @@ -645,14 +645,7 @@ LRESULT CALLBACK PlotWindowProc(HWND hwnd, UINT uMsg, case WM_CLOSE: /* close window */ { - GRAPH *g = pGraph(hwnd); - if (g) { - /* if g equals currentgraph, reset currentgraph. */ - if (g == currentgraph) - currentgraph = NULL; - DestroyGraph(g->graphid); - } } goto WIN_DEFAULT; @@ -1233,6 +1226,13 @@ void RemoveWindow(GRAPH *dgraph) wd = pWindowData(dgraph); if (wd) SendMessage(wd->wnd, WM_CLOSE, (WPARAM) wd->hDC, 0); + + if (dgraph) { + /* if g equals currentgraph, reset currentgraph. */ + if (dgraph == currentgraph) + currentgraph = NULL; + DestroyGraph(dgraph->graphid); + } }