Age | Commit message (Collapse) | Author |
|
The AccountManager creates AccountState objects, and stores them in a
shared pointer.
Previously, the raw pointer was given out, and stored in other objects.
That made removal very tricky: when an account gets removed, the
underlying object gets deleted, and then all classes that listen get
notified of the deletion. Those classes would sometimes put a nullptr
into the AccountState pointer they stored, and in each usage would
(hopefully) check for a nullptr. The problem was that a number of checks
were missing, which the clang static analyser pointed out.
This patch changes nearly all uses of a raw pointer into the shared
pointer, thereby making sure all usages have a valid reference, even
when account deletion happens. The two places where a raw pointer is
still used, now put it into a refcounted pointer as soon as possible.
|
|
|
|
|
|
|
|
See #5180
|
|
Since the quota is a per-folder value, this will make the displayed data
more useful when a single sync folder is configured.
Of course each subfolder could have a different quota again.
|
|
|
|
|
|
Conflicts:
src/gui/quotainfo.h
|
|
- rename target "doc-dev"
- group into modules
- move to doc/dev
|
|
To document the change made two commits ago
|
|
|
|
|
|
This remove code duplication because the QuotaJob was just a duplication
of the propfind jobs with the properties hardcoded.
|
|
|
|
This allows all the account state information to live in gui
while the sync-relevant data stays in libsync.
I also moved quotainfo to gui since it depends on the account state.
|