Bug 388893 - changing a presets brush tip and overwriting creates too many required tips in XML
Summary: changing a presets brush tip and overwriting creates too many required tips i...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Brush engines (other bugs)
Version First Reported In: git master (please specify the git hash!)
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Dmitry Kazakov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-13 03:06 UTC by Scott Petrovic
Modified: 2018-01-16 10:24 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Scott Petrovic 2018-01-13 03:06:55 UTC
When changing the preset tip and saving, Krita appears to be requiring all brush tips that exist. This causes an "x" to appear by the preset even though the required brush tips are found

Steps to reproduce.

1. select the Stamp_Freckles.kpp file 
2. go into the brush editor and change the predefined brush tip to something else
3. overwrite the brush preset
4. go into the share location to see the new preset that was created
5. run the command "identify -verbose Stamp_Freckles.kpp" to see the PNG metadata


result that happens in XML...

<param type="string" name="requiredBrushFilesList"><![CDATA[A_snow-pack.gih;3_brush.png;A_snow-pack.gih;3_brush.png;A_snow-pack.gih;3_brush.png;cazu-spines.gbr;3_brush.png;cazu-spines.gbr;3_brush.png;cazu-spines.gbr;3_brush.png;cazu_watercolor2.gih;3_brush.png;cazu_watercolor2.gih;3_brush.png;cazu_watercolor2.gih;3_brush.png;double_special6.gih;3_brush.png;double_special6.gih;3_brush.png;double_special6.gih;3_brush.png;cazu_watercolor2.gih;3_brush.png;cazu_watercolor2.gih;3_brush.png;cazu_watercolor2.gih;3_brush.png;A_wall-texture.gih;3_brush.png;A_wall-texture.gih;3_brush.png;A_wall-texture.gih;3_brush.png;A_smoke.gbr;3_brush.png;A_smoke.gbr;3_brush.png;A_smoke.gbr;3_brush.png;A_pin.gih;3_brush.png;A_pin.gih;3_brush.png;A_pin.gih;3_brush.png;A_grass-floor.gih;3_brush.png;A_grass-floor.gih;3_brush.png;A_grass-floor.gih;3_brush.png]]></param>
Comment 1 Scott Petrovic 2018-01-13 03:16:26 UTC
This "requiredBrushFilesList" property is related to masked brushes. The brush I tested with Stamp_Freckles.kpp doesn't even have a masked brush. The bug could possibly be related to that.
Comment 2 Halla Rempt 2018-01-13 09:30:09 UTC
Yes -- this is code that was added for the masked brush. Confirmed and assigned to Dmitry, to look into when he returns from his vacation.
Comment 3 Dmitry Kazakov 2018-01-16 10:24:18 UTC
Git commit 09b542ee6dd2e63edde3f5aed80f1f572431edcd by Dmitry Kazakov.
Committed on 16/01/2018 at 10:23.
Pushed by dkazakov into branch 'master'.

Fix too many dependent brushes in a list of RequiredBrushFilesListTag

We should reset the settings object before every dump of the options
from the widgets, otherwise some of the options accumulate

M  +7    -0    libs/image/brushengine/kis_paintop_settings.cpp
M  +6    -0    libs/image/brushengine/kis_paintop_settings.h
M  +7    -0    libs/ui/kis_paintop_box.cc

https://commits.kde.org/krita/09b542ee6dd2e63edde3f5aed80f1f572431edcd