diff options
author | obo <obo@openoffice.org> | 2010-07-29 12:41:44 +0200 |
---|---|---|
committer | obo <obo@openoffice.org> | 2010-07-29 12:41:44 +0200 |
commit | f18da7dd3a28225ff2c34182a06f932addfcf022 (patch) | |
tree | 6ddc749c19e3c384e8b5b4719a6a33bf2560d1e9 | |
parent | 951dc8fa6013d079f613cb40a9da685e6c0f81de (diff) | |
parent | bd436ffc82fd0b6e4ea9134be863739d153bc9c7 (diff) |
CWS-TOOLING: integrate CWS dv19ooo/DEV300_m86
-rwxr-xr-x[-rw-r--r--] | extensions/source/update/check/updatecheckjob.cxx | 7 | ||||
-rwxr-xr-x[-rw-r--r--] | setup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx | 33 |
2 files changed, 35 insertions, 5 deletions
diff --git a/extensions/source/update/check/updatecheckjob.cxx b/extensions/source/update/check/updatecheckjob.cxx index 04c4d932f..c75530388 100644..100755 --- a/extensions/source/update/check/updatecheckjob.cxx +++ b/extensions/source/update/check/updatecheckjob.cxx @@ -327,13 +327,14 @@ void SAL_CALL UpdateCheckJob::queryTermination( lang::EventObject const & ) } //------------------------------------------------------------------------------ -void SAL_CALL UpdateCheckJob::notifyTermination( lang::EventObject const & rEvt ) +void SAL_CALL UpdateCheckJob::notifyTermination( lang::EventObject const & ) throw ( uno::RuntimeException ) { if ( m_pInitThread.get() != 0 ) + { m_pInitThread->setTerminating(); - - disposing( rEvt ); + m_pInitThread->join(); + } } } // anonymous namespace diff --git a/setup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx b/setup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx index aea7610b7..4c06be2ed 100644..100755 --- a/setup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx +++ b/setup_native/source/win32/customactions/reg4allmsdoc/reg4allmsi.cxx @@ -116,14 +116,43 @@ static BOOL CheckExtensionInRegistry( LPCSTR lpSubKey ) { // We will replace registration for word pad bRet = true; } - if ( strncmp( szBuffer, "OpenOffice.org.", 15 ) == 0 ) + else if ( strncmp( szBuffer, "OpenOffice.org.", 15 ) == 0 ) { // We will replace registration for our own types, too bRet = true; } - if ( strncmp( szBuffer, "ooostub.", 8 ) == 0 ) + else if ( strncmp( szBuffer, "ooostub.", 8 ) == 0 ) { // We will replace registration for ooostub, too bRet = true; } + else + { + OutputDebugStringFormat( " Checking OpenWithList of [%s].\n", lpSubKey ); + HKEY hSubKey; + lResult = RegOpenKeyExA( hKey, "OpenWithList", 0, KEY_ENUMERATE_SUB_KEYS, &hSubKey ); + if ( ERROR_SUCCESS == lResult ) + { + DWORD nIndex = 0; + while ( ERROR_SUCCESS == lResult ) + { + nSize = sizeof( szBuffer ); + lResult = RegEnumKeyExA( hSubKey, nIndex++, szBuffer, &nSize, NULL, NULL, NULL, NULL ); + if ( ERROR_SUCCESS == lResult ) + { + OutputDebugStringFormat( " Found value [%s] in OpenWithList of [%s].\n", szBuffer, lpSubKey ); + if ( strncmp( szBuffer, "WordPad.exe", 11 ) == 0 ) + { // We will replace registration for word pad + bRet = true; + } + else if ( nSize > 0 ) + bRet = false; + } + } + } + else + { + OutputDebugStringFormat( " No OpenWithList found!\n" ); + } + } } else // no default value found -> return TRUE to register for that key bRet = true; |