[Kazehakase-cvs] CVS update: kazehakase/module/search

Zurück zum Archiv-Index

Hiroyuki Ikezoe ikezo****@users*****
Wed Dec 6 11:25:23 JST 2006


Index: kazehakase/module/search/kz-anthy-trainer.c
diff -u kazehakase/module/search/kz-anthy-trainer.c:1.2 kazehakase/module/search/kz-anthy-trainer.c:1.3
--- kazehakase/module/search/kz-anthy-trainer.c:1.2	Wed Dec  6 11:04:51 2006
+++ kazehakase/module/search/kz-anthy-trainer.c	Wed Dec  6 11:25:23 2006
@@ -68,7 +68,6 @@
 /* KzSearch Class */
 static gboolean    register_document          (KzSearch *search,
 					       const gchar *uri,
-					       const gchar *encoding,
 					       const gchar *title,
 					       const gchar *contents,
 					       GTime mtime);
@@ -208,7 +207,7 @@
 
 
 gboolean
-register_document (KzSearch *search, const gchar *uri, const gchar *encoding, const gchar *title, const gchar *contents, GTime mtime)
+register_document (KzSearch *search, const gchar *uri, const gchar *title, const gchar *contents, GTime mtime)
 {
 	KzAnthyTrainerPrivate *priv = KZ_ANTHY_TRAINER_GET_PRIVATE(search);
 	mecab_node_t *node;
Index: kazehakase/module/search/kz-search-hyper-estraier.c
diff -u kazehakase/module/search/kz-search-hyper-estraier.c:1.14 kazehakase/module/search/kz-search-hyper-estraier.c:1.15
--- kazehakase/module/search/kz-search-hyper-estraier.c:1.14	Wed Dec  6 11:13:33 2006
+++ kazehakase/module/search/kz-search-hyper-estraier.c	Wed Dec  6 11:25:23 2006
@@ -96,7 +96,6 @@
 static KzBookmark *get_search_result_bookmark (KzSearch *search, const gchar *text);
 static gboolean    register_document          (KzSearch *search,
 					       const gchar *uri,
-					       const gchar *encoding,
 					       const gchar *title,
 					       const gchar *contents,
 					       GTime mtime);
@@ -260,7 +259,7 @@
 	db = est_db_open(priv->dbname, ESTDBREADER, &ecode);
 	if (!db)
 	{
-		g_warning("error: %s", est_err_msg(ecode));
+		g_warning("db open error: %s", est_err_msg(ecode));
 		return NULL;
 	}
 
@@ -401,7 +400,6 @@
 		if (!end) break;
 	
 		encoding = g_strndup(p, end - p);
-		g_warning("%s", encoding);
 		break;
 	}
 
@@ -409,13 +407,12 @@
 }
 
 gboolean
-register_document (KzSearch *search, const gchar *uri, const gchar *encoding, const gchar *title, const gchar *contents, GTime mtime)
+register_document (KzSearch *search, const gchar *uri, const gchar *title, const gchar *contents, GTime mtime)
 {
 	ESTDB *db;
 	ESTDOC *doc;
 	int ret, ecode, success;
 	gchar *time_str, *filename, *text = NULL;
-	gchar *utf8 = NULL;
 	gchar *tmp_filename, *tmp_path;
 	KzSearchHyperEstraierPrivate *priv = KZ_SEARCH_HYPER_ESTRAIER_GET_PRIVATE(search);
 
@@ -443,24 +440,7 @@
 	est_doc_add_attr(doc, ESTDATTRMDATE, time_str);
 	g_free(time_str);
 
-	if (!encoding)
-		encoding = get_document_encoding(contents);
-	
-	if (encoding && strcmp(encoding, "UTF-8"))
-	{
-		utf8 = g_convert(contents, -1,
-				 "UTF-8", encoding,
-				 NULL, NULL,
-				 NULL);
-	}
-	if (utf8)
-	{
-		text = html_to_text(utf8);
-		g_free(utf8);
-	}
-	else
-		text = html_to_text(contents);
-
+	text = html_to_text(contents);
 	if (text)
 	{
 		est_doc_add_text(doc, text);
@@ -557,15 +537,32 @@
 		else
 		{
 			gchar *uri, *contents;
+			gchar *encoding;
 			GTime mtime;
 			struct stat st;
 
+			g_file_get_contents(new_path, &contents, NULL, NULL);
 			g_stat(new_path, &st);
 			mtime = st.st_mtime;
-			g_file_get_contents(new_path, &contents, NULL, NULL);
 			uri = create_uri_from_filename(new_path + strlen("file://") + priv->cache_path_len);
-			kz_search_register_document(search, uri, NULL, NULL, contents, mtime);
+
+			encoding = get_document_encoding(contents);
+	
+			if (encoding && strcmp(encoding, "UTF-8"))
+			{
+				gchar *utf8_contents;
+				utf8_contents = g_convert(contents, -1,
+							  "UTF-8", encoding,
+							  NULL, NULL,
+							  NULL);
+				kz_search_register_document(search, uri, NULL, utf8_contents, mtime);
+				g_free(utf8_contents);
+			}
+			else
+				kz_search_register_document(search, uri, NULL, contents, mtime);
  
+ 			if (encoding)
+				g_free(encoding);
 			g_free(uri);
 			g_free(contents);
 		}


More information about the Kazehakase-cvs mailing list
Zurück zum Archiv-Index