https://bz.apache.org/ooo/show_bug.cgi?id=126629
Issue ID: 126629 Issue Type: DEFECT Summary: aoo suddenly crashes on win7 - incorrect call of "dwmapi.dll" in "salframe.cxx" Product: General Version: 4.0.1 Hardware: PC OS: Windows 7 Status: CONFIRMED Severity: critical Priority: P5 Component: code Assignee: issues@openoffice.apache.org Reporter: oliver.brinz...@gmx.de Created attachment 85107 --> https://bz.apache.org/ooo/attachment.cgi?id=85107&action=edit correct call first noticed with aoo 4.0.1 \main\vcl\win\source\window\salframe.cxx: static BOOL ImplDwmIsCompositionEnabled() { SalData* pSalData = GetSalData(); if( ! pSalData->mpDwmIsCompositionEnabled ) { pSalData->maDwmLib = osl_loadAsciiModule( "Dwmapi.dll", SAL_LOADMODULE_DEFAULT ); if( pSalData->maDwmLib ) pSalData->mpDwmIsCompositionEnabled = (DwmIsCompositionEnabled_ptr)osl_getAsciiFunctionSymbol( pSalData->maDwmLib, "DwmIsCompositionEnabled" ); if( ! pSalData->mpDwmIsCompositionEnabled ) // something failed pSalData->mpDwmIsCompositionEnabled = backwardCompatibleDwmIsCompositionEnabled; } BOOL aResult = FALSE; HRESULT nError = pSalData->mpDwmIsCompositionEnabled( &aResult ); return nError == S_OK && aResult; } "pSalData->mpDwmIsCompositionEnabled" is initialized only the first time ImplDwmIsCompositionEnabled() is called. but ImplDwmIsCompositionEnabled() is called periodically (e.g. window events from other programs). for whatever reason sometimes the "pSalData->mpDwmIsCompositionEnabled" pointer gets corrupted, and a call causes aoo to crash. attached "ImplDwmIsCompositionEnabled_1.png" shows a correct call while ImplDwmIsCompositionEnabled_2.png shows a corrupted one. updating "dwmapi.dll" with "KB3078667" https://support.microsoft.com/en-us/kb/3078667 will not solve the problem. btw: if aoo runs with xp compatibility settings, it will not crash. -- You are receiving this mail because: You are the assignee for the issue.