Skip to content

Commit f05c07e

Browse files
committed
fix infobar race
1 parent cd214b6 commit f05c07e

File tree

3 files changed

+10
-11
lines changed

3 files changed

+10
-11
lines changed

TODO

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,3 @@
1-
- try:
2-
3-
A1 = Colour "sRGB" [50, 100, 150]
4-
A2 = Matrix [A1.value]
5-
A3 = im_mask2vips A2
6-
A4 = Image A3
7-
A5 = extract_area 0 0 1 1 A4
8-
9-
Open viewer in A5, infobar shows (0), shoud show (50)
101

112
- recover after crash should sort by date, then by PID
123

src/infobar.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@
3030
#include "nip4.h"
3131

3232
/*
33-
*/
3433
#define DEBUG_VERBOSE
3534
#define DEBUG
35+
*/
3636

3737
struct _Infobar {
3838
GtkWidget parent_instance;

src/tilesource.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,9 +246,17 @@ tilesource_render_notify_idle(void *user_data)
246246
/* Only bother fetching the updated tile if it's from our current
247247
* pipeline.
248248
*/
249-
if (update->image == tilesource->image)
249+
if (update->image == tilesource->image) {
250250
tilesource_collect(tilesource, &update->rect, update->z);
251251

252+
/* All operations which depend on this image need to be kicked out of
253+
* cache.
254+
*
255+
* Things like the getpoint() we run for the infobar.
256+
*/
257+
vips_image_invalidate_all(update->image);
258+
}
259+
252260
/* Matches the g_new() in tilesource_render_notify().
253261
*/
254262
g_free(update);

0 commit comments

Comments
 (0)