Skip to content

Commit

Permalink
This potentially fixes most deprecated warnings
Browse files Browse the repository at this point in the history
However, I tested it with gtk 2.46.2 on debian that pretend to be
version 2.24.29. So I still get that warnings.
  • Loading branch information
mowgli committed Mar 6, 2016
1 parent 8fdabfe commit 2a9e4d6
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
21 changes: 21 additions & 0 deletions src/image-load.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,15 @@ static void image_loader_init(GTypeInstance *instance, gpointer g_class)
il->can_destroy = TRUE;

#ifdef HAVE_GTHREAD
#if GTK_CHECK_VERSION(2,32,0)
il->data_mutex = g_new(GMutex, 1);
g_mutex_init(il->data_mutex);
il->can_destroy_cond = g_new(GCond, 1);
g_cond_init((il->can_destroy_cond);
#else
il->data_mutex = g_mutex_new();
il->can_destroy_cond = g_cond_new();
#endif
#endif
DEBUG_1("new image loader %p, bufsize=%" G_GSIZE_FORMAT " idle_loop=%u", il, il->read_buffer_size, il->idle_read_loop_count);
}
Expand Down Expand Up @@ -210,9 +217,16 @@ static void image_loader_finalize(GObject *object)

file_data_unref(il->fd);
#ifdef HAVE_GTHREAD
#if GTK_CHECK_VERSION(2,32,0)
g_mutex_clear(il->data_mutex);
g_free(il->data_mutex);
g_cond_clear(il->can_destroy_cond);
g_free(il->can_destroy_cond);
#else
g_mutex_free(il->data_mutex);
g_cond_free(il->can_destroy_cond);
#endif
#endif
}

void image_loader_free(ImageLoader *il)
Expand Down Expand Up @@ -1003,8 +1017,15 @@ static gboolean image_loader_start_thread(ImageLoader *il)
if (!image_loader_thread_pool)
{
image_loader_thread_pool = g_thread_pool_new(image_loader_thread_run, NULL, -1, FALSE, NULL);
#if GTK_CHECK_VERSION(2,32,0)
if (!image_loader_prio_cond) image_loader_prio_cond = g_new(GCond, 1);
g_cond_init(image_loader_prio_cond);
if (!image_loader_prio_mutex) image_loader_prio_mutex = g_new(GMutex, 1);
g_mutex_init(image_loader_prio_mutex);
#else
image_loader_prio_cond = g_cond_new();
image_loader_prio_mutex = g_mutex_new();
#endif
}

il->can_destroy = FALSE; /* ImageLoader can't be freed until image_loader_thread_run finishes */
Expand Down
2 changes: 2 additions & 0 deletions src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -737,7 +737,9 @@ gint main(gint argc, gchar *argv[])
CollectionData *cd = NULL;

#ifdef HAVE_GTHREAD
#if !GTK_CHECK_VERSION(2,32,0)
g_thread_init(NULL);
#endif
gdk_threads_init();
gdk_threads_enter();

Expand Down

0 comments on commit 2a9e4d6

Please sign in to comment.