From 318843cead68edf07381046da72ff52c1fc8e31b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steve=20Fr=C3=A9cinaux?= Date: Wed, 18 Aug 2010 22:26:48 +0200 Subject: [PATCH] Fix warning when using g_irepository_enumerate_version() The reason for the warning was that g_irepository_get_version() expects the typelib to be already loaded, but enumerate_version() can be called on typelibs that are not. --- girepository.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/girepository.c b/girepository.c index 96a23e6fe..288055ce2 100644 --- a/girepository.c +++ b/girepository.c @@ -1196,9 +1196,12 @@ g_irepository_enumerate_versions (GIRepository *repository, * available versions, as it could have been loaded using * require_private(). */ - loaded_version = g_irepository_get_version (NULL, namespace_); - if (loaded_version && !g_list_find_custom (ret, loaded_version, g_str_equal)) - ret = g_list_prepend (ret, g_strdup (loaded_version)); + if (g_irepository_is_registered (repository, namespace_, NULL)) + { + loaded_version = g_irepository_get_version (repository, namespace_); + if (loaded_version && !g_list_find_custom (ret, loaded_version, g_str_equal)) + ret = g_list_prepend (ret, g_strdup (loaded_version)); + } return ret; }