diff options
author | dec05eba <dec05eba@protonmail.com> | 2020-11-11 03:21:02 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-11-11 03:21:02 +0100 |
commit | 01636191bc8ee0a109a50ca9441f01a14d273a02 (patch) | |
tree | 07b08e6aed9902d3d8fece301e31d7c178db9cae | |
parent | dd3da1832c0103a2da35df8ac2483461311bdf25 (diff) |
Matrix: do not save to sync file on error
-rw-r--r-- | TODO | 4 | ||||
-rw-r--r-- | src/plugins/Matrix.cpp | 10 |
2 files changed, 8 insertions, 6 deletions
@@ -126,4 +126,6 @@ Implement m.room.tombstone. Show a marker when a room uses encryption. Remove replied-to message text in room preview. That shows ignored users text and we want to see the reply message instead anyways. Update room name/avatar with new data in /sync. -Read marker is incorrect if the last message is an edit/redact, because they are hidden and replaces other body items instead.
\ No newline at end of file +Read marker is incorrect if the last message is an edit/redact, because they are hidden and replaces other body items instead. +Scroll tabs if there are more than 3 tab items and show arrow on left/right side when there are more items to see. +/sync doesn't include user displayname/avatar for new messages (synapse bug?). Use /profile in those cases (merge with fetching message by id used for replies and pinned messages). (Mark messages user as not resolved).
\ No newline at end of file diff --git a/src/plugins/Matrix.cpp b/src/plugins/Matrix.cpp index d6034de..ce003a0 100644 --- a/src/plugins/Matrix.cpp +++ b/src/plugins/Matrix.cpp @@ -1099,12 +1099,8 @@ namespace QuickMedia { } #endif - sync_end: - if(sync_running) - std::this_thread::sleep_for(std::chrono::milliseconds(500)); - // TODO: Circulate file - FILE *sync_cache_file = fopen(matrix_cache_dir.data.c_str(), initial_sync ? "wb" : "ab"); + sync_cache_file = fopen(matrix_cache_dir.data.c_str(), initial_sync ? "wb" : "ab"); initial_sync = false; if(sync_cache_file) { if(json_root.IsObject()) { @@ -1116,6 +1112,10 @@ namespace QuickMedia { } fclose(sync_cache_file); } + + sync_end: + if(sync_running) + std::this_thread::sleep_for(std::chrono::milliseconds(500)); } }); } |