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 703845 - Cursor movement destroy canvas
Cursor movement destroy canvas
Status: RESOLVED NOTGNOME
Product: GIMP
Classification: Other
Component: User Interface
git master
Other Linux
: Normal major
: ---
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2013-07-09 06:48 UTC by Konrad Rzepecki
Modified: 2013-07-30 06:10 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Slow movement destruction (49.34 KB, image/jpeg)
2013-07-09 06:48 UTC, Konrad Rzepecki
Details
Fast movement destruction (75.86 KB, image/jpeg)
2013-07-09 06:48 UTC, Konrad Rzepecki
Details
Canvas scaling destruction (53.57 KB, image/jpeg)
2013-07-26 07:05 UTC, Konrad Rzepecki
Details

Description Konrad Rzepecki 2013-07-09 06:48:04 UTC
Created attachment 248689 [details]
Slow movement destruction

Any kind of cursor movement above canvas destroys its contents.

Slow movement works like eraser, faster left artifacts. Destroyed area have shape of cursor frame. Tool icon don't cause problems. See attachments (slow and fast movement).
Comment 1 Konrad Rzepecki 2013-07-09 06:48:50 UTC
Created attachment 248690 [details]
Fast movement destruction
Comment 2 Michael Natterer 2013-07-09 17:10:39 UTC
This has never been reported before, could be a cairo issue.
Please paste the output of gimp-2.9 --version --verbose
Comment 3 Konrad Rzepecki 2013-07-10 06:04:49 UTC
$ LANG=C gimp-2.9 --version --verbose
GNU Image Manipulation Program version 2.9.1
git-describe: soc-2012-unified-transform-after-gsoc-1110-g8ef5fca

using GEGL version 0.3.0 (compiled against version 0.3.0)
using GLib version 2.36.3 (compiled against version 2.36.3)
using GdkPixbuf version 2.28.2 (compiled against version 2.28.2)
using GTK+ version 2.24.19 (compiled against version 2.24.19)
using Pango version 1.34.1 (compiled against version 1.34.1)
using Fontconfig version 2.10.93 (compiled against version 2.10.93)
using Cairo version 1.12.14 (compiled against version 1.12.14)
Comment 4 Michael Natterer 2013-07-10 10:11:24 UTC
git-describe: soc-2012-unified-transform-after-gsoc-1110-g8ef5fca ??

I suggest you switch to latest master and try again :)
Comment 5 Konrad Rzepecki 2013-07-10 10:52:59 UTC
It was yesterday master. No change in today master.

$ git branch
  gimp-2-8
* master
  origin
$ git pull
Already up-to-date.
$ git log -1
commit 3cc923d5a50287b2a7ab77dce381aabab3e37418
Author: Massimo Valentini <mvalentini@src.gnome.org>
Date:   Tue Jul 9 19:41:52 2013 +0200

    Bug 703806: GIMP crashes when scaling an image
...
Comment 6 Michael Natterer 2013-07-12 13:31:18 UTC
Very strange. Can you run X with another driver and check if it goes away?
Comment 7 Konrad Rzepecki 2013-07-15 05:54:10 UTC
Same problem on VESA. Normally I use binary nvidia.
Comment 8 Konrad Rzepecki 2013-07-16 07:20:32 UTC
I try to bisect problem, but I was unable to do in proper way. GIMP prior commit 4a81849e364b892325f0b87af040cd7727988fdb form 30 Jan crash with error "cairo-surface.c:1585: cairo_surface_mark_dirty_rectangle: Assertion `! _cairo_surface_has_snapshots (surface)' failed.".  I've mark them as good. 

Only thing I can confirm that this commit have this bug, but not necessary this is the first commit with it.
Comment 9 Michael Natterer 2013-07-16 11:03:13 UTC
Reopening to restore visibility. I still have no clue what could be
causing this tho :(
Comment 10 Konrad Rzepecki 2013-07-17 07:00:31 UTC
Some more info, it maybe helpful. 

I use Slackware-current, and I'm quite sure I've tested some gimp git-master after 30 Jan (day of first commit I can prove to be broken). I don't remember that gimp was broken in way I describe here.

Slackware changelog can be found here: http://slackware.com/changelog/current.php?cpu=i386


I've use xorg server 1.14 but revert to 1.13 doesn't help.
Comment 11 Michael Natterer 2013-07-20 13:49:41 UTC
I think at this point, trying another (newer or older) cairo version
is your best option, but I'm just guessing.
Comment 12 Konrad Rzepecki 2013-07-22 08:19:53 UTC
No change. There are no newer cairo versions so I tried older.

Oldest gimp supported cairo version 1.12.2 and 1.12.4 cause gimp crash on start with error:
cairo-surface.c:594: cairo_surface_create_similar_image: Assertion `image->is_clear' failed.

With cairo 1.12.6 gimp starts but bug is present.
Comment 13 su-v 2013-07-25 21:56:15 UTC
Reproduced on OS X 10.7.5 if compiling GIMP git master with X11 backend [*] (dependencies installed via MacPorts):

$ gimp-git.sh x11 --verbose --version
GNU Image Manipulation Program version 2.9.1
git-describe: soc-2012-unified-transform-after-gsoc-1144-g37195c8

using GEGL version 0.3.0 (compiled against version 0.3.0)
using GLib version 2.36.3 (compiled against version 2.36.3)
using GdkPixbuf version 2.28.2 (compiled against version 2.28.2)
using GTK+ version 2.24.20 (compiled against version 2.24.20)
using Pango version 1.34.1 (compiled against version 1.34.1)
using Fontconfig version 2.10.93 (compiled against version 2.10.93)
using Cairo version 1.12.14 (compiled against version 1.12.14)
$ 
$ uname -a
Darwin Chillida.local 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64
$ 

X11/XQuartz:
XQuartz 2.7.4 (xorg-server 1.13.0)


Note: GIMP master compiled on the same system with Quartz backend does not expose these kind of rendering artifacts, nor do stable builds (2.8.6) with either backend.

-- 
[*] I'm aware that this backend is officially no longer supported on OS X, but I was curious to compare redraw performance between the two backends wrt <https://mail.gnome.org/archives/gimp-developer-list/2013-July/thread.html#00016>
Comment 14 Konrad Rzepecki 2013-07-26 07:05:34 UTC
Created attachment 250179 [details]
Canvas scaling destruction

I've also noticed that canvas scaling cause errors. It always shows up on bottom of a window. It appear only when canvas is hiding below bottom window boundary.


PS. Latest Slackware-current and git-masters made no change.
Comment 15 Massimo 2013-07-29 15:59:34 UTC
I see similar artifacts if I build cairo configured with:

--enable-xlib-xcb

a feature that is evidently experimental:

--- The Xlib/XCB functions feature is still under active development and is
--- included in this release only as a preview. It does NOT fully work yet
--- and incompatible changes may yet be made to Xlib/XCB functions specific
--- API.

Does anybody see these artifacts also with a vanilla cairo?
Comment 16 Michael Natterer 2013-07-29 17:01:42 UTC
Great find Massino, I guess it's time to paste this bug to the #cairo guys.
Comment 17 su-v 2013-07-29 18:18:45 UTC
Massimo wrote:
> I see similar artifacts if I build cairo configured with:
> 
> --enable-xlib-xcb

Current cairo 1.12.14 installed via MacPorts on OS X has all XCB features enabled with the X11 backend:
<https://trac.macports.org/browser/trunk/dports/graphics/cairo/Portfile?rev=106495#L118>

After rebuilding cairo without xlib-xcb (configured with '--disable-xlib-xcb'), I no longer see the artifacts in GIMP master (with GTK+/X11 backend) on OS X 10.7.5 either.
Comment 18 Michael Natterer 2013-07-29 20:39:55 UTC
This is clearly a NOTGNOME bug, but let's keep it open for a bit so everybody
can find it and it stays visible for the cairo guys. Will paste them
the link again :)
Comment 19 Michael Natterer 2013-07-29 21:03:15 UTC
I filed this with cairo now, closing.

https://bugs.freedesktop.org/show_bug.cgi?id=67505
Comment 20 Konrad Rzepecki 2013-07-30 06:10:25 UTC
Thanks Massimo!


I've checked Slackware build script and this option is enabled. Building cairo without it fix problem.