--- xzgv-0.9/src/main.c 2009-01-06 21:41:26.000000000 +0100
+++ xzgv-0.9.new/src/main.c 2009-01-06 21:43:42.000000000 +0100
@@ -201,7 +201,7 @@
/* required prototypes */
void render_pixmap(int reset_pos);
void cb_nextprev_tagged_image(int next,int view);
-void idle_xvpic_load(int *entryp);
+gboolean idle_xvpic_load(gpointer data);
gint pic_win_resized(GtkWidget *widget,GdkEventConfigure *event);
void cb_scaling_double(void);
void cb_xscaling_double(void);
@@ -2179,8 +2179,7 @@
idle_xvpic_lastadjval=gtk_clist_get_vadjustment(GTK_CLIST(clist))->value;
idle_xvpic_jumped=0;
entry=0;
-tn_idle_tag=gtk_idle_add((GtkFunction)idle_xvpic_load,&entry);
-
+tn_idle_tag=gtk_idle_add(idle_xvpic_load, &entry);
/* the "" is a crappy way to disable it, but it's hairy otherwise */
gtk_statusbar_push(GTK_STATUSBAR(statusbar),tn_id,
tn_msgs?"Reading thumbnails...":"");
@@ -2605,7 +2604,7 @@
}
-void idle_xvpic_load(int *entryp)
+gint idle_xvpic_load(gpointer data)
{
static char buf[1024];
struct clist_data_tag *datptr;
@@ -2616,12 +2615,13 @@
static unsigned char xvpic_data[80*60]; /* max thumbnail size */
float adjval;
static int prev_scanpos=0; /* if jumped, saved pos in top-to-bot scan */
+int *entryp = data;
idle_xvpic_called=1;
/* don't do it if it would be a bad time */
if(idle_xvpic_blocked)
- return;
+ return TRUE;
/* freeze/thaw actually *cause* flickering for this, rather than
* preventing it (!), so I've not used those here.
@@ -2729,6 +2729,8 @@
*entryp=-1;
}
}
+
+ return TRUE;
}