Fixed history service in manager
authormaritus <lucas.pawlik@gmail.com>
Mon, 26 Feb 2007 14:33:00 +0000 (14:33 +0000)
committermaritus <lucas.pawlik@gmail.com>
Mon, 26 Feb 2007 14:33:00 +0000 (14:33 +0000)
git-svn-id: file:///svnroot/mdictionary/trunk@94 5bde0345-f819-0410-ac75-e5045f9217cc

src/manager/src/untar.c
src/manager/src/ws_manager.c

index 31acbfd..165536f 100644 (file)
@@ -176,8 +176,10 @@ gint decompress_file (gchar *in_file, gchar **out_path)
                                                {
                                                        g_debug("Couldn't create directory %s", 
                                                               temp);
-                                                       BZ2_bzReadClose ( &bzerror, bz2_file );
-                                                       fclose (file);
+                                                       g_free(header);
+                                                       BZ2_bzReadClose(&bzerror,
+                                                                       bz2_file);
+                                                       fclose(file);
                                                        return -100;
                                                };
                                                break;
@@ -211,6 +213,7 @@ gint decompress_file (gchar *in_file, gchar **out_path)
        else 
        {
                g_debug("There was an error while trying to read the archive file");
+               g_free(header); header = NULL;
                fclose(file);
                return -100;
        };
@@ -220,6 +223,7 @@ gint decompress_file (gchar *in_file, gchar **out_path)
                *out_path = g_strdup(dest_dir);
                g_free(dest_dir); dest_dir = NULL;
        }
+       g_free(header); header = NULL;
        fclose(file);
        return 100;
        
index 5339e9d..7ab2ffb 100644 (file)
@@ -119,12 +119,8 @@ static void ws_mng_on_found_translation(gchar* translation,
         g_debug("->%s", __FUNCTION__);
         WSMngSearchData *data = (WSMngSearchData *) user_data;
        
-       
-        //decrement returned results count
-        //data->returned_results--;
        data->returned_trans_results--;
-       
-        //if there is returned translation        
+       //if there is returned translation        
         if (translation != NULL)
         {
                 if (data->trans == NULL)
@@ -139,7 +135,7 @@ static void ws_mng_on_found_translation(gchar* translation,
                }
                 else //if thre was stored trnasloation 
                 {
-                        if (data->returned_trans_results > 0)
+                        if (data->returned_trans_results >= 0)
                         {
                                 //copy stored trnasloation to temporery variable
                                 gchar* tmp = g_strconcat(data->trans,
@@ -158,46 +154,18 @@ static void ws_mng_on_found_translation(gchar* translation,
         //if there will be no more returned translations
        if (!data->bookmark_mode && data->returned_trans_results <= 0)
        {
-               //if (data->returned_trans_results <= 0)
-               //{
-                       //if serching for history record is done 
-                       //and thre is no translation
-                if (data->search_in_history == TRUE && data->trans == NULL)
-                {
-                        //notify gui about event
-                               ws_dbus_notify(data->dbus_data,
-                                       WS_DBUS_ERROR_DICTIONARY_NOT_LOAD
-                                );
-                       data->search_in_history = FALSE;
-                }
-                else
-                {
-                        data->search_in_history = FALSE;
-                       data->is_seraching_trans = FALSE;
-                               //send translation to gui                       
-                       ws_dbus_server_return_translations(data->dbus_data,
+               data->is_seraching_trans = FALSE;
+               ws_dbus_server_return_translations(data->dbus_data,
                                                        data->trans);
-                       g_free(data->trans); data->trans = NULL;        
-                }
-               //}
+               g_free(data->trans); data->trans = NULL;                     
        }else if (data->bookmark_mode)
        {
-               if (data->search_in_history == TRUE && data->trans == NULL)
-                {
-                               //notify gui about event
-                               ws_dbus_notify(data->dbus_data,
-                                       WS_DBUS_ERROR_DICTIONARY_NOT_LOAD
-                                      );
-                               data->search_in_history = FALSE;
-                }else
-               {
-                       data->search_in_history = FALSE;
-                       data->is_seraching_trans = FALSE;
-                               //send translation to gui
-                               ws_dbus_server_return_translations(data->dbus_data,
+               data->search_in_history = FALSE;
+                       //send translation to gui
+                       ws_dbus_server_return_translations(data->dbus_data,
                                                        data->trans);
-                       g_free(data->trans); data->trans = NULL;      
-               }
+               g_free(data->trans); data->trans = NULL;      
+               data->is_seraching_trans = FALSE;
        }
         g_debug("<-%s", __FUNCTION__);
 }
@@ -336,6 +304,7 @@ static void ws_mng_on_search_word(GError *error, GArray *word, gpointer user_dat
         if (data->is_seraching ==  TRUE)
        {
                pthread_cancel(data->p_thread);
+               //ws_dbus_server_return_words(data->dbus_data, data->word_list);
        }
        data->is_seraching =  TRUE;
        pthread_create(&data->p_thread, 
@@ -461,7 +430,7 @@ static void ws_mng_on_found_word(GArray* list,
                g_array_free(data->word_list, TRUE); data->word_list = NULL;
         }else if (data->bookmark_mode)
        {
-               data->is_seraching =  FALSE;
+               
                ws_dbus_server_return_words(data->dbus_data, data->word_list);
                //free memory used by each word from word list
                for (i=0; i<data->word_list->len; i++)
@@ -470,6 +439,7 @@ static void ws_mng_on_found_word(GArray* list,
                }
                //free memory used by GArray 
                g_array_free(data->word_list, TRUE); data->word_list = NULL;
+               data->is_seraching =  FALSE;
        }
        g_debug("<-%s", __FUNCTION__);
 }
@@ -531,6 +501,7 @@ static void ws_mng_on_search_translation (GError *error, GArray *word,
         //set how many dictionaries to search
         //data->returned_results = data->dict->len;
        data->returned_trans_results = data->dict->len;
+       //g_printf("%s word %s\n", __FUNCTION__, data->word);
         //data->trans = NULL;
         //free data sended by dbus
         //osso_rpc_free_val(osso_data);
@@ -538,6 +509,12 @@ static void ws_mng_on_search_translation (GError *error, GArray *word,
        if (data->is_seraching_trans ==  TRUE)
        {
                pthread_cancel(data->p_thread_trans);
+               //g_printf("Jestem calncelujac freda\n");
+               g_free(data->trans); data->trans = NULL;
+               gchar* tmp = " ";
+               ws_dbus_server_return_translations(data->dbus_data,
+                                                       tmp);
+               
        }
        data->is_seraching_trans = TRUE;
         pthread_create(&data->p_thread_trans, 
@@ -645,6 +622,7 @@ static void ws_mng_on_search_in_history(GError *error, GArray *word,
                pthread_cancel(data->p_thread_trans);
        }
        data->is_seraching_trans = TRUE;
+       //g_printf("\n\n-----------------------------Search in history word - %s--\n\n", data->word);
         pthread_create(&data->p_thread_trans, 
                        NULL, 
                        ws_mng_search_translation, 
@@ -840,7 +818,7 @@ static void ws_mng_add_bookmark(GError *error, GArray* param,
         //get the word passed by dbus 
         if (data->bookmark != NULL)
        {
-               g_debug("adding bookmarks...%p locataion", data->bookmark);
+               //g_debug("adding bookmarks...%p locataion", data->bookmark);
                osso_data = &g_array_index (param, osso_rpc_t, 0); 
                word = g_strdup(osso_data->value.s);
                osso_data_trans = &g_array_index (param, osso_rpc_t, 1); 
@@ -1382,8 +1360,8 @@ static void ws_mng_extract_dictionary(GError *error, GArray* param,
                ws_dbus_server_return_extracted_dict(data->dbus_data, dest);
        }
        
-       //g_free(path);
-       //g_free(dest);
+       g_free(path);
+       //_free(dest);
        g_debug("<-%s", __FUNCTION__);
 }
 #ifdef __cplusplus