diff --git a/reactos/subsys/system/calc/winecalc.c b/reactos/subsys/system/calc/winecalc.c index 3df8a89e8ab..5ff0c7dbcea 100644 --- a/reactos/subsys/system/calc/winecalc.c +++ b/reactos/subsys/system/calc/winecalc.c @@ -269,6 +269,7 @@ LRESULT WINAPI MainProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) } DestroyCalc( &calc ); + DestroyMenus(); PostQuitMessage( 0 ); return 0; @@ -2839,6 +2840,12 @@ void DestroyCalc (CALC *calc) { int i; + for (i=0;inumButtons;i++) + DestroyWindow(calc->cb[i].hBtn); +} + +void DestroyMenus() +{ if (menus[MENU_STD] != 0) DestroyMenu(menus[MENU_STD]); @@ -2847,9 +2854,6 @@ void DestroyCalc (CALC *calc) if (menus[MENU_SCIWS] != 0) DestroyMenu(menus[MENU_SCIWS]); - - for (i=0;inumButtons;i++) - DestroyWindow(calc->cb[i].hBtn); } void calc_buffer_format(CALC *calc) { diff --git a/reactos/subsys/system/calc/winecalc.h b/reactos/subsys/system/calc/winecalc.h index 1606c94a9e5..fad22e974de 100644 --- a/reactos/subsys/system/calc/winecalc.h +++ b/reactos/subsys/system/calc/winecalc.h @@ -338,6 +338,7 @@ LRESULT WINAPI MainProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); void InitLuts(void); void InitMenus(HINSTANCE hInst); +void DestroyMenus(); void InitCalc (CALC *calc); void DestroyCalc (CALC *calc);