@@ -97,27 +97,29 @@ static void potential_deadlock_detected(const LockPair& mismatch, const LockStac
97
97
LogPrintf (" POTENTIAL DEADLOCK DETECTED\n " );
98
98
LogPrintf (" Previous lock order was:\n " );
99
99
for (const LockStackItem& i : s1) {
100
+ std::string prefix{};
100
101
if (i.first == mismatch.first ) {
101
- LogPrintf ( " (1)" ); /* Continued */
102
+ prefix = " (1)" ;
102
103
}
103
104
if (i.first == mismatch.second ) {
104
- LogPrintf ( " (2)" ); /* Continued */
105
+ prefix = " (2)" ;
105
106
}
106
- LogPrintf (" %s\n " , i.second .ToString ());
107
+ LogPrintf (" %s %s\n " , prefix , i.second .ToString ());
107
108
}
108
109
109
110
std::string mutex_a, mutex_b;
110
111
LogPrintf (" Current lock order is:\n " );
111
112
for (const LockStackItem& i : s2) {
113
+ std::string prefix{};
112
114
if (i.first == mismatch.first ) {
113
- LogPrintf ( " (1)" ); /* Continued */
115
+ prefix = " (1)" ;
114
116
mutex_a = i.second .Name ();
115
117
}
116
118
if (i.first == mismatch.second ) {
117
- LogPrintf ( " (2)" ); /* Continued */
119
+ prefix = " (2)" ;
118
120
mutex_b = i.second .Name ();
119
121
}
120
- LogPrintf (" %s\n " , i.second .ToString ());
122
+ LogPrintf (" %s %s\n " , prefix , i.second .ToString ());
121
123
}
122
124
if (g_debug_lockorder_abort) {
123
125
tfm::format (std::cerr, " Assertion failed: detected inconsistent lock order for %s, details in debug log.\n " , s2.back ().second .ToString ());
@@ -131,10 +133,11 @@ static void double_lock_detected(const void* mutex, const LockStack& lock_stack)
131
133
LogPrintf (" DOUBLE LOCK DETECTED\n " );
132
134
LogPrintf (" Lock order:\n " );
133
135
for (const LockStackItem& i : lock_stack) {
136
+ std::string prefix{};
134
137
if (i.first == mutex) {
135
- LogPrintf ( " (*)" ); /* Continued */
138
+ prefix = " (*)" ;
136
139
}
137
- LogPrintf (" %s\n " , i.second .ToString ());
140
+ LogPrintf (" %s %s\n " , prefix , i.second .ToString ());
138
141
}
139
142
if (g_debug_lockorder_abort) {
140
143
tfm::format (std::cerr,
0 commit comments