258
267
xfdesktop_image_file_is_valid(const gchar *filename)
262
271
gboolean size_read = FALSE;
266
275
g_return_val_if_fail(filename, FALSE);
272
281
loader = gdk_pixbuf_loader_new();
273
282
g_signal_connect(G_OBJECT(loader), "size-prepared",
274
283
G_CALLBACK(pixbuf_loader_size_cb), &size_read);
277
if((len=fread(buf, 1, sizeof(buf), fp)) > 0) {
278
288
if(!gdk_pixbuf_loader_write(loader, buf, len, NULL))
286
296
gdk_pixbuf_loader_close(loader, NULL);
287
297
g_object_unref(G_OBJECT(loader));