Closed GoogleCodeExporter closed 9 years ago
Original comment by yrizoud
on 23 Feb 2010 at 2:20
Got it. How to reproduce:
After loading or reloading a 24bit image, if the first action you do is:
- scroll image with RMB
---> You scroll an uninitialized image, apparently (color 0). This is only
missing
visual feedback: if you swap pages and back, you can see that your action
worked.
- Contour fill
---> The outline is color 255
- or Run a Lua script that relies on GetBackupPixel,
---> The pixels it reads are from before the load/load. This can be nasty if the
image was different size.
----
Culprit is not a missing End_of_modification() call, but it's due to a
difference
between normal loading and 24bit loading:
- Normal loading puts each pixel in the layer + depth buffer + visible image.
So on
end of load, all is up-to-date.
- 24bit loading fills only the layer buffer. Depth buffer and visible image
still
contain values from previous image.
After loading, End_of_modification() is called before Redraw_layered_image(),
it is
wrong because End_of_modification() copies old values; Redraw_layered_image()
then
updates the front image but too late.
Original comment by yrizoud
on 24 Feb 2010 at 2:07
Also happened when loading jpeg from command-line.
Fixed in r1366
Original comment by yrizoud
on 24 Feb 2010 at 2:31
Original issue reported on code.google.com by
yrizoud
on 23 Feb 2010 at 2:20