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 631710 - displays garbage at bottom of image
displays garbage at bottom of image
Status: RESOLVED FIXED
Product: eog
Classification: Core
Component: image viewer
2.32.x
Other Linux
: Normal normal
: ---
Assigned To: Felix Riemann
EOG Maintainers
: 633449 633544 638407 644335 645490 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-10-08 21:00 UTC by Edward Sheldrake
Modified: 2011-05-03 16:12 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
example screenshot of checkboard (21.64 KB, image/png)
2010-10-08 21:00 UTC, Edward Sheldrake
  Details
not a proper fix (766 bytes, patch)
2010-10-08 21:11 UTC, Edward Sheldrake
none Details | Review
fix for gnome-2-32 and likely master (3.03 KB, patch)
2010-10-09 13:42 UTC, Felix Riemann
accepted-commit_now Details | Review

Description Edward Sheldrake 2010-10-08 21:00:26 UTC
Created attachment 171970 [details]
example screenshot of checkboard

Eog 2.32.0 may display "garbage" at the bottom of the image under certain conditions:

1. Open a large image.
2. Zoom out
3. Increase the size of the eog window
4. Scroll down

I think eog scrolls down further than it should be possible to, and repeats the bottom part of the image, perhaps offset or corrupted slightly.
Comment 1 Edward Sheldrake 2010-10-08 21:11:33 UTC
Created attachment 171973 [details] [review]
not a proper fix

I think the bug is from git commit http://git.gnome.org/browse/eog/commit/?h=gnome-2-32&id=ceadfd9141867358aea715ea060a2abe18e7846a "Finish making EogScrollView GSEAL-compatible."

In the old code, newly calculated page_size, page_increment, step_increment were always set in the adjustment, but after the changes, they are only changed depending on if xofs / yofs has changed.

The patch is just to illustrate how reversing that solves the problem.
Comment 2 Edward Sheldrake 2010-10-08 21:26:11 UTC
On further investigation, you don't need to zoom. Basically the scrollbar doesn't work properly after you resize the eog window - if you increase the eog window size, you can scroll off the bottom of the image, if you decrease the eog window size, you can't scroll down when you should be able to.
Comment 3 Felix Riemann 2010-10-09 12:28:12 UTC
I'm still failing to reproduce it here, but I see what you mean in comment 1.
The only strange thing with that is that although the old code always set the values it only emitted the signal if xofs was changed (as does the new one).

Maybe there's been some slight behavioural change in GTK, but I'll need to install an updated GTK version before I can tell.
Comment 4 Felix Riemann 2010-10-09 13:03:46 UTC
JFYI, I could reproduce it now. Had a slight mixup in eog versions.
Comment 5 Felix Riemann 2010-10-09 13:42:28 UTC
Created attachment 172010 [details] [review]
fix for gnome-2-32 and likely master

It basically comes down to your proposal, gtk_adjustment_configure is smart enough to only emit the signals that are actually necessary.

This works with the current stable eog. I'm holding this back until I could verify against the development version (doesn't build right now due to GTK-API-changes).
Comment 6 Edward Sheldrake 2010-10-09 14:12:08 UTC
Review of attachment 172010 [details] [review]:

I can confirm that this patch fixes this issue with eog 2.32.0.
Comment 7 Felix Riemann 2010-10-09 19:09:19 UTC
Thanks for confirming, Edward.
Pushed to master and gnome-2-32. Problem was not that visible in the development branch as it would just let you scroll too far without showing garbage.


commit b21dd56b9437e53b7ba8abdd96942c1871edc02c
Author: Felix Riemann <>
Date:   Sat Oct 9 15:33:37 2010 +0200

    Make sure EogScrollView's adjustment values are always correctly set
    
    Ensures one can only scroll as far as necessary. If one scrolled to far
    the images's last line/column was used for padding. Fixes bug 631710.

This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report.
Comment 8 Felix Riemann 2010-10-29 17:42:32 UTC
*** Bug 633449 has been marked as a duplicate of this bug. ***
Comment 9 Felix Riemann 2010-10-31 14:56:02 UTC
*** Bug 633544 has been marked as a duplicate of this bug. ***
Comment 10 Felix Riemann 2011-03-10 18:29:54 UTC
*** Bug 644335 has been marked as a duplicate of this bug. ***
Comment 11 Felix Riemann 2011-03-17 13:20:01 UTC
*** Bug 638407 has been marked as a duplicate of this bug. ***
Comment 12 Jean-François Fortin Tam 2011-03-22 12:20:10 UTC
*** Bug 645490 has been marked as a duplicate of this bug. ***
Comment 13 Mike 2011-05-03 14:53:34 UTC
I'm still seeing this bug in eog 3.2.0. I couldn't tell for sure from the final comments if the fix is coming in a version *after* 3.2.0 or if it's supposed to be fixed in 3.2.0.

Anyway, yeah, I took a 1024x1024 PNG in eog, maximized window, zoomed to 1:1 ratio, and scrolled down. It reproduced this bug.
Comment 14 Felix Riemann 2011-05-03 15:09:55 UTC
There is no version 3.2.0 yet. Please check your version again.

It is fixed in versions 2.32.1 and 3.0.0.
Comment 15 Mike 2011-05-03 15:36:32 UTC
Whoops! Yes, I meant 2.32.0. OK, I guess I'll wait until 2.32.1.

Also, I confirmed it does this when scrolling horizontally, too, in case it matters now:

1) Open "large" image (an image too large to fit on screen at 1:1 ratio.
2) Zoom to 1:1.
3) Maximize eog window.
4) Scroll either vertically or horizontally to see the image "boundary strip" redrawn repeatedly past the boundary of the image, i.e., the garbage.
Comment 16 Felix Riemann 2011-05-03 16:12:04 UTC
(In reply to comment #15)
> Whoops! Yes, I meant 2.32.0. OK, I guess I'll wait until 2.32.1.
> 

2.32.1 is actually out since November, so you might want to check your distribution updates for it. ;)

Note, that some distros don't provide a 2.32.1 package of eog but have the fix backported into their 2.32.0 package (Fedora 14 at least).

> Also, I confirmed it does this when scrolling horizontally, too, in case it
> matters now:

The fix is handling this case too. :)