libgimp: in GimpTileBackendPlugin, don't read tile data upon TILE_SET

Add an internal _gimp_tile_ref_noinit() function, which increases
the ref-count of a tile *without* initializing its data (in
particular, without reading its data from GIMP, or zeroing it.)
Use this function, instead of gimp_tile_ref(), when storing a tile
in GimpTileBackendPlugin, to avoid unnecessarily reading the tile
data from GIMP.
This commit is contained in:
Ell
2019-01-15 02:28:42 -05:00
parent 41d5986a2b
commit 5ffdb9aa41
3 changed files with 16 additions and 1 deletions

View File

@ -261,7 +261,7 @@ gimp_tile_write_mul (GimpTileBackendPlugin *backend_plugin,
gimp_tile = gimp_drawable_get_tile (priv->drawable,
priv->shadow,
y+v, x+u);
gimp_tile_ref (gimp_tile);
_gimp_tile_ref_noinit (gimp_tile);
{
gint ewidth = gimp_tile->ewidth;