Skip to content
Snippets Groups Projects
Verified Commit a55fc8e4 authored by Nicolas Werner's avatar Nicolas Werner
Browse files

Work around MSVC bug with structured bindings in lambdas

Causes error messages like:
error C3493: 'key_id' cannot be implicitly captured because no default capture mode has been specified
parent b55b5a83
No related branches found
No related tags found
No related merge requests found
......@@ -336,14 +336,30 @@ DeviceVerificationFlow::DeviceVerificationFlow(QObject *,
static_cast<int>(err->status_code));
}
for (const auto &[user_id, tmp] : res.errors)
for (const auto &[key_id, e] : tmp)
// MSVC bug, error C3493: 'key_id' cannot be implicitly captured because no
// default capture mode has been specified
// for (const auto &[user_id, tmp] : res.errors)
// for (const auto &[key_id, e] : tmp)
// nhlog::net()->error("signature error for user {} and key "
// "id {}: {}, {}",
// user_id,
// key_id,
// mtx::errors::to_string(e.errcode),
// e.error);
for (const auto &error : res.errors) {
const auto &user_id = error.first;
for (const auto &key_error : error.second) {
const auto &key_id = key_error.first;
const auto &e = key_error.second;
nhlog::net()->error("signature error for user {} and key "
"id {}: {}, {}",
user_id,
key_id,
mtx::errors::to_string(e.errcode),
e.error);
}
}
});
}
......
......@@ -172,14 +172,30 @@ SelfVerificationStatus::setupCrosssigning(bool useSSSS, QString password, bool u
static_cast<int>(err->status_code));
}
for (const auto &[user_id, tmp] : res.errors)
for (const auto &[key_id, e_] : tmp)
// MSVC bug, error C3493: 'key_id' cannot be implicitly captured because no
// default capture mode has been specified
// for (const auto &[user_id, tmp] : res.errors)
// for (const auto &[key_id, e_] : tmp)
// nhlog::net()->error("signature error for user {} and key "
// "id {}: {}, {}",
// user_id,
// key_id,
// mtx::errors::to_string(e_.errcode),
// e_.error);
for (const auto &error : res.errors) {
const auto &user_id = error.first;
for (const auto &key_error : error.second) {
const auto &key_id = key_error.first;
const auto &e_ = key_error.second;
nhlog::net()->error("signature error for user {} and key "
"id {}: {}, {}",
user_id,
key_id,
mtx::errors::to_string(e_.errcode),
e_.error);
}
}
});
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment