After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 774708 - All pixels data is lost on transforms
All pixels data is lost on transforms
Status: RESOLVED FIXED
Product: GEGL
Classification: Other
Component: core
git master
Other Linux
: Normal critical
: 0.4.0
Assigned To: Default Gegl Component Owner
Default Gegl Component Owner
: 774635 774808 774826 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2016-11-19 11:47 UTC by try_out
Modified: 2016-11-23 08:35 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description try_out 2016-11-19 11:47:36 UTC
All pixels are lost after any transformations. When I'm trying to do any transformation, such as rotate, skew, scale, the layer becomes pure.
Comment 1 Jehan 2016-11-19 21:42:19 UTC
Hello,

Could you give us a little more details? Which Linux distribution is that? How did you get GIMP? Self-compiled? From a third-party build (which one?)?

Since you use a dev version, which commit is that? (the commit hash is written in the middle of the GIMP window when no image is opened)
Comment 2 Michael Natterer 2016-11-20 00:33:31 UTC
Maybe you transform backwards? Try resetting the transform tool options.
Comment 3 try_out 2016-11-20 06:45:04 UTC
I'm using Mint 18 Mate 64-bit.
GIMP 2.9.5, from ppa.launchpad.net/otto-kesselgulasch/gimp-edge/ubuntu xenial main.
GIMP was updated yesderday, and there was a bug.
Commit 5129b85, packaged by Otto Meier.

About resetting the transform tool options. I tried to reset all user setting for GIMP. I tried to purge and install the programm again.

My friend has the same bug, he's working in Mint Cinnamon, as I know.
Comment 4 try_out 2016-11-20 07:22:30 UTC
…There is no difference what value is used for the transformation or rotation. I can just click to apply with 0° rotation or 0% transform, and the image disappears.
Comment 5 Jehan 2016-11-20 13:44:33 UTC
> About resetting the transform tool options. I tried to reset all user setting for GIMP. I tried to purge and install the programm again.

What exactly did you do? By "purge", do you mean you deleted the config directory (~/.config/GIMP/2.9)?
Just FYI, you have a button in the bottom-right of every tool options with tooltip being "Reset to default values". Just hitting this button should be enough. That's what Mitch meant in comment 2.

If you deleted the config directory, that's a little too much, but it would also reset to defaults obviously. :-)
Just be careful if you have custom data you don't want to lose in your config.

> My friend has the same bug, he's working in Mint Cinnamon, as I know.

If everyone using this PPA is experiencing the same bug with a default config, it looks like a packaging bug. Could you open a bug report to the PPA and ask the packager to investigate. He may have added some specific patches on top of our code base or other kind of changes.
Maybe also he is not using an up-to-date GEGL/babl or other dependency (this may often be a problem for the dev version).

Please could you copy the third party bug report link here once you created it and keep us updated?
Thanks.
Comment 6 try_out 2016-11-20 14:25:08 UTC
Purge is «apt purge gimp*»
I wrote that «I tried to reset all user setting for GIMP», it means I deleted directory ~/.config/GIMP/2.9.
Well, I've just tried to click this button to reset to default. Nothing changes. The image still disappears.

> Please could you copy the third party bug report link here once you created

I was create the bug-report at the first time. And my English not so good. But I will try to create the next one to the PPA and ask them to investigate. :-).
Thanks.
Comment 7 grayich 2016-11-20 15:08:52 UTC
same...
archlinux, gimp-git from https://aur.archlinux.org/packages/gimp-git/
run as "LC_ALL=en_US.utf8 gimp" or "LC_ALL=C gimp" -- working
my locale ru_RU.UTF-8, run as "LC_ALL=ru_RU.UTF-8 gimp" -- bug

videosample - https://youtu.be/5DnEXMF9XLk
Comment 8 Michael Schumacher 2016-11-21 09:08:10 UTC
That Archlinux package is quite old, apparently - and if they are not packaging the 2.9.4 release, then they shouldn't use the 2.9.4 version number in the package name.
Comment 9 Michael Schumacher 2016-11-21 09:12:39 UTC
BTW, do the pixels just become transparent - i.e. their RGB values are still there, but the A component is set to zero - or are their values gone completely?

You can check this with a color picker or e.g. the unerase more of the eraser tool.
Comment 10 Rolf 2016-11-21 09:28:43 UTC
This is the same problem with Ubuntu 16.04.01.
There is no Information in the picture (sorry for my bad englisch ;))
Comment 11 try_out 2016-11-21 09:37:33 UTC
> …their RGB values are still there, but the A component is set to zero - or are their values gone completely?
Thair values are gone. I had checked with a color picker.
Comment 12 Rolf 2016-11-21 09:39:53 UTC
The pixel have no colour information. Complete transparent. If i take the color picker, the Colour change to black.
After press Ctrl Z the picture are back.
Comment 13 Jehan 2016-11-21 14:50:05 UTC
> run as "LC_ALL=en_US.utf8 gimp" or "LC_ALL=C gimp" -- working
> my locale ru_RU.UTF-8, run as "LC_ALL=ru_RU.UTF-8 gimp" -- bug

Ok so that's what allowed me to reproduce the bug! Note that changing the locale in preferences and restarting GIMP does not trigger the issue. Only running with a locale on command line does.

So that ended up being a bug in GEGL. A few days ago, Pippin has replaced strtod by g_ascii_strtod in matrix string (likely to make it locale independent, which makes sense especially since the comma ',' is used to separate matrix components). But the opposite function to create the matrix string was still using a matrix dependent printf-like call.

That explains why the issue was appearing for locales where ',' is used instead of '.' as decimal point (and also not through preferences, where LC_NUMERIC is not changed).

Fixed on GEGL with commit:

commit 4bea1130c1485fe82dd3beafaa50174a5eb78a2f
Author: Jehan <jehan@girinstud.io>
Date:   Mon Nov 21 15:42:14 2016 +0100

    Bug 774708 - All pixels data is lost on transforms.
    
    gegl_matrix3_parse_string() has been updated in b7f2d85 to use the
    non-locale dependant function g_ascii_strtod(), but the opposite
    gegl_matrix3_to_string() was still creating locale-dependant double
    strings (with g_string_append_printf()) which was completely breaking
    matrix string descriptions.

 gegl/gegl-matrix.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
Comment 14 Jehan 2016-11-21 15:00:50 UTC
P.S.: is 0.4.0 the right milestone to set here? I see that current version is 0.3.10.
Comment 15 Rolf 2016-11-21 15:10:00 UTC
I see the ppa from otto have GEGL 0.3.11. Is this the mistake?
Comment 16 grayich 2016-11-21 15:24:04 UTC
i compiled gegl-git 0.3.10.27.g25afca5
everything works well

gratitude
Comment 17 Jehan 2016-11-21 15:39:57 UTC
> I see the ppa from otto have GEGL 0.3.11. Is this the mistake?

0.3.11 is just a development version, not a stable release. But this was not the problem here. There was an actual bug. Though obviously, using a development version, you are bound to experience various quacks (the bug was not existent in the stable 0.3.10 for instance since it was introduced in a later commit).

My question on the version was rather for Schumaml or Pippin. They would likely know what milestone I am supposed to set on this report.
Comment 18 Rolf 2016-11-21 16:14:32 UTC
(In reply to Jehan from comment #17)
> > I see the ppa from otto have GEGL 0.3.11. Is this the mistake?
> 
> 0.3.11 is just a development version, not a stable release. But this was not
> the problem here. There was an actual bug. Though obviously, using a
> development version, you are bound to experience various quacks (the bug was
> not existent in the stable 0.3.10 for instance since it was introduced in a
> later commit).
> 
> My question on the version was rather for Schumaml or Pippin. They would
> likely know what milestone I am supposed to set on this report.

can i change the version?
Comment 19 Jehan 2016-11-21 16:26:01 UTC
> can i change the version?

You should ask this to the PPA owner. We are not maintaining it and can't do anything about this.
Comment 20 Michael Schumacher 2016-11-21 18:43:35 UTC
*** Bug 774808 has been marked as a duplicate of this bug. ***
Comment 21 Michael Natterer 2016-11-22 07:17:31 UTC
*** Bug 774826 has been marked as a duplicate of this bug. ***
Comment 22 Michael Schumacher 2016-11-23 08:35:17 UTC
*** Bug 774635 has been marked as a duplicate of this bug. ***