[PATCH 0/5] MR5127: Explicitly request debug info in critical sections.
From: Paul Gofman <pgofman(a)codeweavers.com> --- dlls/dinput/device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c index bb2feb0e8da..9a9b559902a 100644 --- a/dlls/dinput/device.c +++ b/dlls/dinput/device.c @@ -2131,7 +2131,7 @@ void dinput_device_init( struct dinput_device *device, const struct dinput_devic device->device_gain = 10000; device->autocenter = DIPROPAUTOCENTER_ON; device->force_feedback_state = DIGFFS_STOPPED | DIGFFS_EMPTY; - InitializeCriticalSection( &device->crit ); + InitializeCriticalSectionEx( &device->crit, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO ); dinput_internal_addref( (device->dinput = dinput) ); device->vtbl = vtbl; -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
From: Paul Gofman <pgofman(a)codeweavers.com> --- dlls/dplayx/dplay.c | 2 +- dlls/dplayx/dplobby.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c index 9b287001e9e..d2d9c5f6a4a 100644 --- a/dlls/dplayx/dplay.c +++ b/dlls/dplayx/dplay.c @@ -5675,7 +5675,7 @@ HRESULT dplay_create( REFIID riid, void **ppv ) obj->ref4A = 0; obj->ref4 = 1; - InitializeCriticalSection( &obj->lock ); + InitializeCriticalSectionEx( &obj->lock, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO ); obj->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": IDirectPlayImpl.lock"); if ( DP_CreateDirectPlay2( obj ) ) diff --git a/dlls/dplayx/dplobby.c b/dlls/dplayx/dplobby.c index aa2d44430f6..f7178597a9b 100644 --- a/dlls/dplayx/dplobby.c +++ b/dlls/dplayx/dplobby.c @@ -2043,7 +2043,7 @@ HRESULT dplobby_create( REFIID riid, void **ppv ) obj->ref3 = 1; obj->ref3A = 0; - InitializeCriticalSection( &obj->lock ); + InitializeCriticalSectionEx( &obj->lock, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO ); obj->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": IDirectPlayLobbyImpl.lock"); DPQ_INIT( obj->msgs ); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
From: Paul Gofman <pgofman(a)codeweavers.com> --- dlls/dsound/capture.c | 2 +- dlls/dsound/dsound.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/dsound/capture.c b/dlls/dsound/capture.c index 5956da792af..e9012600cfa 100644 --- a/dlls/dsound/capture.c +++ b/dlls/dsound/capture.c @@ -832,7 +832,7 @@ static HRESULT DirectSoundCaptureDevice_Create( device->ref = 1; device->state = STATE_STOPPED; - InitializeCriticalSection( &(device->lock) ); + InitializeCriticalSectionEx( &(device->lock), 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO ); device->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": DirectSoundCaptureDevice.lock"); *ppDevice = device; diff --git a/dlls/dsound/dsound.c b/dlls/dsound/dsound.c index 356f211d7bb..57fd6c1a651 100644 --- a/dlls/dsound/dsound.c +++ b/dlls/dsound/dsound.c @@ -177,7 +177,7 @@ static HRESULT DirectSoundDevice_Create(DirectSoundDevice ** ppDevice) device->primary_pwfx->nAvgBytesPerSec = device->primary_pwfx->nSamplesPerSec * device->primary_pwfx->nBlockAlign; device->primary_pwfx->cbSize = 0; - InitializeCriticalSection(&(device->mixlock)); + InitializeCriticalSectionEx(&(device->mixlock), 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); device->mixlock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": DirectSoundDevice.mixlock"); InitializeSRWLock(&device->buffer_list_lock); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
From: Paul Gofman <pgofman(a)codeweavers.com> --- dlls/dwrite/font.c | 4 ++-- dlls/dwrite/main.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c index 2028440ca8e..65bda9b082c 100644 --- a/dlls/dwrite/font.c +++ b/dlls/dwrite/font.c @@ -5500,7 +5500,7 @@ HRESULT create_fontface(const struct fontface_desc *desc, struct list *cached_li IDWriteFontFile_AddRef(fontface->file); fontface->stream = desc->stream; IDWriteFontFileStream_AddRef(fontface->stream); - InitializeCriticalSection(&fontface->cs); + InitializeCriticalSectionEx(&fontface->cs, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); fontface_cache_init(fontface); stream_desc.stream = fontface->stream; @@ -5993,7 +5993,7 @@ void init_local_fontfile_loader(void) local_fontfile_loader.IDWriteLocalFontFileLoader_iface.lpVtbl = &localfontfileloadervtbl; local_fontfile_loader.refcount = 1; list_init(&local_fontfile_loader.streams); - InitializeCriticalSection(&local_fontfile_loader.cs); + InitializeCriticalSectionEx(&local_fontfile_loader.cs, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); local_fontfile_loader.cs.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": localfileloader.lock"); } diff --git a/dlls/dwrite/main.c b/dlls/dwrite/main.c index 6776b1ce974..e8765f0672e 100644 --- a/dlls/dwrite/main.c +++ b/dlls/dwrite/main.c @@ -2097,7 +2097,7 @@ static void init_dwritefactory(struct dwritefactory *factory, DWRITE_FACTORY_TYP list_init(&factory->file_loaders); list_init(&factory->localfontfaces); - InitializeCriticalSection(&factory->cs); + InitializeCriticalSectionEx(&factory->cs, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); factory->cs.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": dwritefactory.lock"); } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
From: Paul Gofman <pgofman(a)codeweavers.com> --- dlls/inetcomm/mimeintl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/inetcomm/mimeintl.c b/dlls/inetcomm/mimeintl.c index 1e5b1a0ce90..9a4c610d996 100644 --- a/dlls/inetcomm/mimeintl.c +++ b/dlls/inetcomm/mimeintl.c @@ -526,7 +526,7 @@ HRESULT MimeInternational_Construct(IMimeInternational **internat) global_internat = HeapAlloc(GetProcessHeap(), 0, sizeof(*global_internat)); global_internat->IMimeInternational_iface.lpVtbl = &mime_internat_vtbl; global_internat->refs = 0; - InitializeCriticalSection(&global_internat->cs); + InitializeCriticalSectionEx(&global_internat->cs, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); global_internat->cs.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": global_internat.cs"); list_init(&global_internat->charsets); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
This merge request was approved by Alistair Leslie-Hughes. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
This merge request was approved by Rémi Bernon. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/5127
Nikolay Sivov (@nsivov) commented about dlls/dwrite/font.c:
IDWriteFontFile_AddRef(fontface->file); fontface->stream = desc->stream; IDWriteFontFileStream_AddRef(fontface->stream); - InitializeCriticalSection(&fontface->cs); + InitializeCriticalSectionEx(&fontface->cs, 0, RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO); fontface_cache_init(fontface);
Is this only meaningful when DebugInfo->Spare[0] is set to something? For this call it's not set. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/5127#note_62181
participants (5)
-
Alistair Leslie-Hughes (@alesliehughes) -
Nikolay Sivov (@nsivov) -
Paul Gofman -
Paul Gofman (@gofman) -
Rémi Bernon