aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNotZed <NotZed@HelixCode.com>2000-05-07 16:49:41 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-05-07 16:49:41 +0800
commit47e3cd0fdbfd59165761cab3e96612240e1e03bd (patch)
tree596a10c17d950bba77d61fbed60140f48a8d3f48
parente7150f51635e89d8c4f6826e3683a447741ddfcb (diff)
downloadgsoc2013-evolution-47e3cd0fdbfd59165761cab3e96612240e1e03bd.tar.gz
gsoc2013-evolution-47e3cd0fdbfd59165761cab3e96612240e1e03bd.tar.zst
gsoc2013-evolution-47e3cd0fdbfd59165761cab3e96612240e1e03bd.zip
New function, only write out the ibex if it has changed.
2000-05-07 NotZed <NotZed@HelixCode.com> * file.c (ibex_save): New function, only write out the ibex if it has changed. svn path=/trunk/; revision=2868
-rw-r--r--libibex/ChangeLog5
-rw-r--r--libibex/file.c16
-rw-r--r--libibex/ibex.h3
3 files changed, 24 insertions, 0 deletions
diff --git a/libibex/ChangeLog b/libibex/ChangeLog
index 016416574f..27661d3012 100644
--- a/libibex/ChangeLog
+++ b/libibex/ChangeLog
@@ -1,3 +1,8 @@
+2000-05-07 NotZed <NotZed@HelixCode.com>
+
+ * file.c (ibex_save): New function, only write out the ibex if it
+ has changed.
+
2000-05-07 <notzed@helixcode.com>
* file.c (ibex_open): Also close the fd after we're done.
diff --git a/libibex/file.c b/libibex/file.c
index 462fbec3d4..c419360e26 100644
--- a/libibex/file.c
+++ b/libibex/file.c
@@ -347,6 +347,22 @@ lose:
}
/**
+ * ibex_save:
+ * @ib:
+ *
+ * Only write out an ibex if it is dirty.
+ *
+ * Return value: Same as ibex_write.
+ **/
+int
+ibex_save (ibex *ib)
+{
+ if (ib->dirty)
+ return ibex_write(ib);
+ return 0;
+}
+
+/**
* ibex_close: Write out the ibex file (if it has changed) and free
* the data associated with it.
* @ib: the ibex
diff --git a/libibex/ibex.h b/libibex/ibex.h
index 646853b120..03635e275d 100644
--- a/libibex/ibex.h
+++ b/libibex/ibex.h
@@ -41,6 +41,9 @@ ibex *ibex_open (char *file, int flags, int mode);
/* Write the ibex to disk. */
int ibex_write (ibex *ib);
+/* only save if ibex has changed. */
+int ibex_save (ibex *ib);
+
/* Write the ibex to disk if it has changed, and free all memory
* associated with it.
*/