[bijiben] Fix leaks on path, color and dates strings
- From: Pierre-Yves Luyten <pyluyten src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [bijiben] Fix leaks on path, color and dates strings
- Date: Fri, 8 Feb 2013 23:03:09 +0000 (UTC)
commit 484c11db71f0e6ffb36b57a9ee5c48c411fc6bde
Author: Pierre-Yves Luyten <py luyten fr>
Date: Fri Feb 8 22:32:50 2013 +0100
Fix leaks on path, color and dates strings
src/bjb-main-view.c | 11 ++++---
src/libbiji/biji-tracker.c | 19 +++++++++----
src/libbiji/serializer/biji-lazy-serializer.c | 35 +++++++++++++++---------
3 files changed, 41 insertions(+), 24 deletions(-)
---
diff --git a/src/bjb-main-view.c b/src/bjb-main-view.c
index e2ad649..7fa9d6e 100644
--- a/src/bjb-main-view.c
+++ b/src/bjb-main-view.c
@@ -407,14 +407,15 @@ on_item_activated(GdMainView * gd,
GtkTreeModel * model ;
/* Get Note Path */
- model = gd_main_view_get_model(gd);
- gtk_tree_model_get_iter (model,&iter, (GtkTreePath*) path);
+ model = gd_main_view_get_model (gd);
+ gtk_tree_model_get_iter (model, &iter, (GtkTreePath*) path);
gtk_tree_model_get (model, &iter,COL_URI, ¬e_path,-1);
/* Switch to that note */
- book = bjb_window_base_get_book(view->priv->window);
- to_open = note_book_get_note_at_path(book,note_path) ;
- switch_to_note(view,to_open);
+ book = bjb_window_base_get_book (view->priv->window);
+ to_open = note_book_get_note_at_path (book, note_path);
+ g_free (note_path);
+ switch_to_note (view, to_open);
return FALSE ;
}
diff --git a/src/libbiji/biji-tracker.c b/src/libbiji/biji-tracker.c
index 2684d9c..4356d8f 100644
--- a/src/libbiji/biji-tracker.c
+++ b/src/libbiji/biji-tracker.c
@@ -322,14 +322,21 @@ biji_note_delete_from_tracker (BijiNoteObj *note)
void
bijiben_push_note_to_tracker (BijiNoteObj *note)
{
- gchar *title,*content,*file,*create_date,*last_change_date, *path;
-
+ gchar *title,*content,*file,*date, *create_date,*last_change_date, *path;
+
+ path = biji_note_obj_get_path (note);
title = tracker_str (biji_note_obj_get_title (note));
- file = g_strdup_printf ("file://%s", biji_note_obj_get_path(note));
- create_date = to_8601_date (biji_note_obj_get_last_change_date (note));
- last_change_date = to_8601_date (biji_note_obj_get_last_change_date (note));
+ file = g_strdup_printf ("file://%s", path);
+
+ date = biji_note_obj_get_create_date (note);
+ create_date = to_8601_date (date);
+ g_free (date);
+
+ date = biji_note_obj_get_last_change_date (note);
+ last_change_date = to_8601_date (date);
+ g_free (date);
+
content = tracker_str (biji_note_get_raw_text (note));
- path = biji_note_obj_get_path (note);
/* TODO : nie:mimeType Note ;
* All these properties are unique and thus can be "updated"
diff --git a/src/libbiji/serializer/biji-lazy-serializer.c b/src/libbiji/serializer/biji-lazy-serializer.c
index 3c1a149..9c6c558 100644
--- a/src/libbiji/serializer/biji-lazy-serializer.c
+++ b/src/libbiji/serializer/biji-lazy-serializer.c
@@ -166,7 +166,9 @@ biji_lazy_serialize_internal (BijiLazySerializer *self)
{
BijiLazySerializerPrivate *priv = self->priv;
GList *tags;
- GdkRGBA color;
+ GdkRGBA color;
+ gchar *path, *date, *color_str;
+ gboolean retval;
priv->writer = xmlNewTextWriterMemory(priv->buf, 0);
@@ -199,14 +201,17 @@ biji_lazy_serialize_internal (BijiLazySerializer *self)
xmlTextWriterEndElement(priv->writer);
// <last-change-date>
- serialize_node (priv->writer, "last-change-date",
- biji_note_obj_get_last_change_date (priv->note));
+ date = biji_note_obj_get_last_change_date (priv->note);
+ serialize_node (priv->writer, "last-change-date", date);
+ g_free (date);
- serialize_node (priv->writer, "last-metadata-change-date",
- biji_note_obj_get_last_metadata_change_date(priv->note));
+ date = biji_note_obj_get_last_metadata_change_date (priv->note);
+ serialize_node (priv->writer, "last-metadata-change-date", date);
+ g_free (date);
- serialize_node (priv->writer, "create-date",
- biji_note_obj_get_create_date (priv->note));
+ date = biji_note_obj_get_create_date (priv->note);
+ serialize_node (priv->writer, "create-date", date);
+ g_free (date);
serialize_node (priv->writer, "cursor-position", "0");
serialize_node (priv->writer, "selection-bound-position", "0");
@@ -214,9 +219,13 @@ biji_lazy_serialize_internal (BijiLazySerializer *self)
serialize_node (priv->writer, "height", "0");
serialize_node (priv->writer, "x", "0");
serialize_node (priv->writer, "y", "0");
-
+
if (biji_note_obj_get_rgba (priv->note, &color))
- serialize_node (priv->writer, "color", gdk_rgba_to_string (&color));
+ {
+ color_str = gdk_rgba_to_string (&color);
+ serialize_node (priv->writer, "color", color_str);
+ g_free (color_str);
+ }
//<tags>
xmlTextWriterWriteRaw(priv->writer, BAD_CAST "\n ");
@@ -235,10 +244,10 @@ biji_lazy_serialize_internal (BijiLazySerializer *self)
xmlFreeTextWriter(priv->writer);
- return g_file_set_contents (biji_note_obj_get_path (priv->note),
- (gchar*) priv->buf->content,
- -1,
- NULL);
+ path = biji_note_obj_get_path (priv->note);
+ retval = g_file_set_contents (path, (gchar*) priv->buf->content, -1, NULL);
+ g_free (path);
+ return retval;
}
/* No matter if icon is saved or not.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]