anjuta r3889 - in trunk: . plugins/symbol-db



Author: jhs
Date: Mon Apr 28 08:43:38 2008
New Revision: 3889
URL: http://svn.gnome.org/viewvc/anjuta?rev=3889&view=rev

Log:
2008-04-28  Massimo Cora\'  <maxcvs email it>

	* plugins/symbol-db/plugin.c (isymbol_manager_search):
	* plugins/symbol-db/symbol-db-engine.c
	(symbol_db_engine_find_symbol_by_name_pattern_filtered):
	fixed partial pattern match accordingly with api.

Modified:
   trunk/ChangeLog
   trunk/plugins/symbol-db/plugin.c
   trunk/plugins/symbol-db/symbol-db-engine.c

Modified: trunk/plugins/symbol-db/plugin.c
==============================================================================
--- trunk/plugins/symbol-db/plugin.c	(original)
+++ trunk/plugins/symbol-db/plugin.c	Mon Apr 28 08:43:38 2008
@@ -1079,7 +1079,7 @@
 				}
 
 				/* Update the symbols */
-				symbol_db_engine_update_project_symbols (sdb_plugin->sdbe_project, root_dir);
+				symbol_db_engine_update_project_symbols (sdb_plugin->sdbe_project, root_dir);				
 			}
 			gtk_progress_bar_set_text (GTK_PROGRESS_BAR (sdb_plugin->progress_bar), 
 									   _("Populating symbols' db..."));
@@ -1425,6 +1425,8 @@
 	SymbolDBPlugin *sdb_plugin;
 	SymbolDBEngine *dbe;
 	GPtrArray *filter_array;
+	gchar *pattern;
+	gboolean exact_match = !partial_name_match;
 
 	sdb_plugin = ANJUTA_PLUGIN_SYMBOL_DB (sm);
 	dbe = SYMBOL_DB_ENGINE (sdb_plugin->sdbe_project);
@@ -1440,14 +1442,21 @@
 	else
 		filter_array = symbol_db_engine_fill_type_array (match_types);
 
+	if (exact_match == FALSE)
+		pattern = g_strdup_printf ("%s%%", match_name);
+	else
+		pattern = g_strdup_printf ("%s", match_name);
+	
 	iterator = symbol_db_engine_find_symbol_by_name_pattern_filtered (dbe,
-																	  match_name,
-																	  !partial_name_match,
+																	  pattern,
+																	  exact_match,
 																	  filter_array,
 																	  include_types,
 																	  global_search,
 																	  info_fields);
 
+	g_free (pattern);
+	
 	if (filter_array)
 	{
 		g_ptr_array_foreach (filter_array, (GFunc)g_free, NULL);

Modified: trunk/plugins/symbol-db/symbol-db-engine.c
==============================================================================
--- trunk/plugins/symbol-db/symbol-db-engine.c	(original)
+++ trunk/plugins/symbol-db/symbol-db-engine.c	Mon Apr 28 08:43:38 2008
@@ -7631,7 +7631,7 @@
 			}
 
 			if ((dyn_node = sdb_engine_get_dyn_query_node_by_id (dbe, 
-					DYN_PREP_QUERY_GET_CLASS_PARENTS, sym_info, 
+					DYN_PREP_QUERY_FIND_SYMBOL_BY_NAME_PATTERN_FILTERED, sym_info, 
 					other_parameters)) == NULL)
 			{			
 				gint i;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]