push_lock -> printf -> OutputDebugStringF -> GetDataDir -> LOCK -> push_lock
Infinite recursion when using -debug and DEBUG_LOCKORDER #1213
issue TheBlueMatt opened this issue on May 6, 2012-
TheBlueMatt commented at 11:43 PM on May 6, 2012: member
-
gavinandresen commented at 12:16 AM on May 7, 2012: contributor
LOCK inside OutputDebugStringF or any of the routines it calls is a big no-no...
-
sipa commented at 12:36 AM on May 7, 2012: member
GetDataDir should not lock, except the first time it is called
-
TheBlueMatt commented at 12:43 AM on May 7, 2012: member
You could reasonably just remove the lock, GetDataDir is called a few times before any other threads are started, so its pretty safe, but I probably missed an edge case or two.
-
sipa commented at 12:45 AM on May 7, 2012: member
Or make sure it's called once beforehand?
-
TheBlueMatt commented at 1:04 AM on May 7, 2012: member
Simple enough either way.
-
laanwj commented at 9:40 AM on March 29, 2013: member
Is this still the case?
- laanwj added the label Tests on Jul 31, 2014
-
sipa commented at 11:08 PM on August 3, 2014: member
I believe this code was significantly changed since.
- laanwj closed this on Feb 9, 2016
- suprnurd referenced this in commit ff12698ed5 on Dec 5, 2017
- lateminer referenced this in commit c87e273f50 on Jan 22, 2019
- dexX7 referenced this in commit d17e8c7ef7 on Apr 8, 2021
- MarcoFalke locked this on Sep 8, 2021
Contributors
Labels