summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2018-09-07 07:05:32 +0200
committerMike Kaganski <mike.kaganski@collabora.com>2018-09-07 11:46:14 +0200
commitaef44b5a71d6d2bd8e399d2cb35bce6d6023fbf8 (patch)
tree24bb55c3962b556c8cc28f6d276ae99795585b91
parent58008a0fdd611bb75e4f6922483818ffd2acbc26 (diff)
Cppcheck: release the handle that CreateThread returns
Change-Id: I4d6d04873d69d2ff1e5409372b353e0bb9a5d68d Reviewed-on: https://gerrit.libreoffice.org/60120 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
-rw-r--r--dtrans/test/win32/dnd/atlwindow.cxx2
-rw-r--r--sal/osl/w32/dllentry.cxx6
-rw-r--r--sfx2/source/appl/shutdowniconw32.cxx2
3 files changed, 7 insertions, 3 deletions
diff --git a/dtrans/test/win32/dnd/atlwindow.cxx b/dtrans/test/win32/dnd/atlwindow.cxx
index 7aa0df7ce0ac..9e1e2e1fc693 100644
--- a/dtrans/test/win32/dnd/atlwindow.cxx
+++ b/dtrans/test/win32/dnd/atlwindow.cxx
@@ -181,7 +181,7 @@ LRESULT AWindow::OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled
data.evtThreadReady= CreateEvent( NULL, FALSE, FALSE, NULL);
- HANDLE hThread= CreateThread( NULL, 0, MTAFunc, &data, 0, &mtaThreadId);
+ CloseHandle(CreateThread(NULL, 0, MTAFunc, &data, 0, &mtaThreadId));
// We must wait until the thread copied the ThreadData structure
WaitForSingleObject( data.evtThreadReady, INFINITE);
CloseHandle( data.evtThreadReady);
diff --git a/sal/osl/w32/dllentry.cxx b/sal/osl/w32/dllentry.cxx
index 8e8c0feda62c..e9323248e3db 100644
--- a/sal/osl/w32/dllentry.cxx
+++ b/sal/osl/w32/dllentry.cxx
@@ -221,13 +221,17 @@ BOOL WINAPI DllMain( HINSTANCE, DWORD fdwReason, LPVOID )
{
// No error check, it works or it does not
// Thread should only be started for headless mode, see desktop/win32/source/officeloader.cxx
- CreateThread( nullptr, 0, ParentMonitorThreadProc, reinterpret_cast<LPVOID>(dwParentProcessId), 0, &dwThreadId );
+ HANDLE hThread
+ = CreateThread(nullptr, 0, ParentMonitorThreadProc,
+ reinterpret_cast<LPVOID>(dwParentProcessId), 0, &dwThreadId);
// Note: calling CreateThread in DllMain is discouraged
// but this is only done in the headless mode and in
// that case no other threads should be running at startup
// when sal3.dll is loaded; also there is no
// synchronization with the spawned thread, so there
// does not appear to be a real risk of deadlock here
+ if (hThread)
+ CloseHandle(hThread);
}
}
diff --git a/sfx2/source/appl/shutdowniconw32.cxx b/sfx2/source/appl/shutdowniconw32.cxx
index 8ff9c621009d..47fb95c37f4a 100644
--- a/sfx2/source/appl/shutdowniconw32.cxx
+++ b/sfx2/source/appl/shutdowniconw32.cxx
@@ -528,7 +528,7 @@ void win32_init_sys_tray()
);
DWORD dwThreadId;
- CreateThread( nullptr, 0, SystrayThread, nullptr, 0, &dwThreadId );
+ CloseHandle(CreateThread(nullptr, 0, SystrayThread, nullptr, 0, &dwThreadId));
}
}