mirror of
https://github.com/nextcloud/desktop.git
synced 2025-10-26 11:17:43 +00:00
Calling forgetSensitiveData() on account deletion leads to a timer for
clearQNAMCache() being queued. Then the Account object is deleted. The
Credentials object stays alive for now because it has a deleteLater
deleter.
If the timer calls into a slot on the Credentials object, the _account
pointer will be invalid at this time.
As a workaround, move the target slot to Account - that way it will not
be called as the account object is already destroyed.
However since Account and Credentials are mutually dependent, it would
be much preferable if their lifetimes were linked, avoiding this
category of bugs.
The current behavior was introduced in
|
||
|---|---|---|
| .. | ||
| abstractcredentials.cpp | ||
| abstractcredentials.h | ||
| credentialscommon.cpp | ||
| credentialscommon.h | ||
| dummycredentials.cpp | ||
| dummycredentials.h | ||
| httpcredentials.cpp | ||
| httpcredentials.h | ||
| tokencredentials.cpp | ||
| tokencredentials.h | ||