SF.net SVN: geany-plugins:[1662] trunk/geany-plugins/treebrowser
dimitrov-adrian at users.sourceforge.net
dimitrov-adrian at xxxxx
Sat Oct 16 22:18:18 UTC 2010
Revision: 1662
http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=1662&view=rev
Author: dimitrov-adrian
Date: 2010-10-16 22:18:18 +0000 (Sat, 16 Oct 2010)
Log Message:
-----------
Treebrowser: Refactor a bit check_hidden() not to leak memory (Patch by Colomban Wendling)
Modified Paths:
--------------
trunk/geany-plugins/treebrowser/ChangeLog
trunk/geany-plugins/treebrowser/README
trunk/geany-plugins/treebrowser/src/treebrowser.c
Modified: trunk/geany-plugins/treebrowser/ChangeLog
===================================================================
--- trunk/geany-plugins/treebrowser/ChangeLog 2010-10-16 19:19:43 UTC (rev 1661)
+++ trunk/geany-plugins/treebrowser/ChangeLog 2010-10-16 22:18:18 UTC (rev 1662)
@@ -24,7 +24,7 @@
(DONE) oneclick document opening
(DONE) filter separating ex.: "*.c;*.cpp;*.h"
* Fix possible memory leaks (using g_free... where is need)
- * Folowing path from current document view
+ * Complete following path from current document view
(DONE) Hide object files as native filebroser (*.o;*.a;*.so;*.dll;*.lib..)
(DONE) Using font from geany settings for sidebar
* Migrating to stash
@@ -38,6 +38,13 @@
+-------------------------------+
+17-10-2010 Adrian Dimitrov <dimitrov.adrian at gmail.com>
+
+ * src/treebrowser.c
+ Refactor a bit check_hidden() not to leak memory
+ (Patch by Colomban Wendling)
+
+
16-10-2010 Adrian Dimitrov <dimitrov.adrian at gmail.com>
* src/treebrowser.c
Modified: trunk/geany-plugins/treebrowser/README
===================================================================
--- trunk/geany-plugins/treebrowser/README 2010-10-16 19:19:43 UTC (rev 1661)
+++ trunk/geany-plugins/treebrowser/README 2010-10-16 22:18:18 UTC (rev 1662)
@@ -31,6 +31,7 @@
Requirements
============
* GTK >= 2.8.0
+ * GIO >= 2.0 (optional)
* Geany >= 0.17
Modified: trunk/geany-plugins/treebrowser/src/treebrowser.c
===================================================================
--- trunk/geany-plugins/treebrowser/src/treebrowser.c 2010-10-16 19:19:43 UTC (rev 1661)
+++ trunk/geany-plugins/treebrowser/src/treebrowser.c 2010-10-16 22:18:18 UTC (rev 1662)
@@ -251,41 +251,32 @@
if (uri[strlen(uri) - 1] == '~')
return FALSE;
+ gboolean is_visible = TRUE;
#ifdef G_OS_WIN32
-#ifdef HAVE_GIO
- GError *error;
+# ifdef HAVE_GIO
GFile *file;
GFileInfo *info;
file = g_file_new_for_path(uri);
- info = g_file_query_info(file, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN, 0, NULL, &error);
- if (error)
+ info = g_file_query_info(file, G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN, 0, NULL, NULL);
+ if (info)
{
- g_error_free(error);
- g_object_unref(file);
- return TRUE;
+ if (g_file_info_get_is_hidden(info))
+ is_visible = FALSE;
+ g_object_unref(info);
}
- else
- {
- if (g_file_info_get_is_hidden (info))
- {
- g_error_free(error);
- g_object_unref(file);
- return FALSE;
- }
- g_error_free(error);
- g_object_unref(file);
- return TRUE;
- }
-#else
- return TRUE;
-#endif
+ g_object_unref(file);
+# endif /* HAVE_GIO */
+#else /* G_OS_WIN32 */
+ gchar *base_name;
-#else
- if (g_path_get_basename(uri)[0] == '.')
- return FALSE;
- return TRUE;
+ base_name = g_path_get_basename(uri);
+ if (base_name[0] == '.')
+ is_visible = FALSE;
+ g_free(base_name);
#endif
+
+ return is_visible;
}
static gchar*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Plugins-Commits
mailing list