Am Sonntag, 13. Mai 2018, 22:20:44 CEST schrieb Timur Irikovich Davletshin:
> On Sun, 2018-05-13 at 21:12 +0200, Tobias Ellinghaus wrote:
> > I added some change to how masks are handled:
> > 
> > - When resetting the spot module we delete all masks used internally
> > in the 
> > module. That should prevent dt from piling up masks that are not
> > shown in the 
> > mask manager.
> > - When loading XMP files all cloning masks (the ones used in spot
> > removal) 
> > that are not actually used by the image are ignored.
> > 
> > With those it might be enough to reload your images to get rid of the
> > big 
> > sidecar sizes. It would be great if you could try it after making a
> > backup of 
> > your files. Just to be on the safe side ...
> > 
> > Tobias
> 
> It kind of working, but not 100%. Some of those masks are cleaned (spot
> tool I believe), but there are others... see attachment.

I know, I didn't get rid of those on purpose so far. If you compile your own 
darktable you can remove the lines

sqlite3_exec(dt_database_get(darktable.db), "BEGIN TRANSACTION", NULL, NULL, 
NULL);
g_hash_table_foreach(mask_entries, add_non_clone_mask_entries_to_db, &img-
>id);
sqlite3_exec(dt_database_get(darktable.db), "COMMIT", NULL, NULL, NULL);

from src/common/exif.cc and have it drop all unused masks when loading a 
sidecar file.
Maybe it would be nice to wire "drop unused masks" into Lua, however, given 
how quirky masks are implemented I am not sure if that is feasible. :-(

> Symptome is
> the same: big sidecar file with masks in it and nothing in mask
> manager. Cleaning it manually via mask manager helps.
> 
> Timur.

Tobias

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to