1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-11-29 22:48:10 +02:00

All: Fix: Fix issue with revisions being needlessly created when decrypting notes

This commit is contained in:
Laurent Cozic
2019-05-28 18:10:21 +01:00
parent 6d7511efbb
commit 04c6579f2c
5 changed files with 43 additions and 4 deletions

View File

@@ -1,6 +1,7 @@
const BaseModel = require('lib/BaseModel.js');
const { Database } = require('lib/database.js');
const Setting = require('lib/models/Setting.js');
const ItemChange = require('lib/models/ItemChange.js');
const JoplinError = require('lib/JoplinError.js');
const { time } = require('lib/time-utils.js');
const { sprintf } = require('sprintf-js');
@@ -355,7 +356,7 @@ class BaseItem extends BaseModel {
plainItem.updated_time = item.updated_time;
plainItem.encryption_cipher_text = '';
plainItem.encryption_applied = 0;
return ItemClass.save(plainItem, { autoTimestamp: false });
return ItemClass.save(plainItem, { autoTimestamp: false, changeSource: ItemChange.SOURCE_DECRYPTION });
}
static async unserialize(content) {

View File

@@ -66,5 +66,6 @@ ItemChange.TYPE_DELETE = 3;
ItemChange.SOURCE_UNSPECIFIED = 1;
ItemChange.SOURCE_SYNC = 2;
ItemChange.SOURCE_DECRYPTION = 2;
module.exports = ItemChange;

View File

@@ -118,10 +118,11 @@ class RevisionService extends BaseService {
FROM item_changes
WHERE item_type = ?
AND source != ?
AND source != ?
AND id > ?
ORDER BY id ASC
LIMIT 10
`, [BaseModel.TYPE_NOTE, ItemChange.SOURCE_SYNC, Setting.value('revisionService.lastProcessedChangeId')]);
`, [BaseModel.TYPE_NOTE, ItemChange.SOURCE_SYNC, ItemChange.SOURCE_DECRYPTION, Setting.value('revisionService.lastProcessedChangeId')]);
if (!changes.length) break;