[geany/geany] d76d72: Import upstream MIO changes

Colomban Wendling git-noreply at xxxxx
Thu Jul 26 00:02:30 UTC 2012


Branch:      refs/heads/document-messages
Author:      Colomban Wendling <ban at herbesfolles.org>
Committer:   Colomban Wendling <ban at herbesfolles.org>
Date:        Mon, 26 Dec 2011 14:30:07
Commit:      d76d72518a5c46acd5dc142d1f627d30978875eb
             https://github.com/geany/geany/commit/d76d72518a5c46acd5dc142d1f627d30978875eb

Log Message:
-----------
Import upstream MIO changes


Modified Paths:
--------------
    tagmanager/mio/mio.c
    tagmanager/mio/mio.h

Modified: tagmanager/mio/mio.c
35 files changed, 35 insertions(+), 0 deletions(-)
===================================================================
@@ -18,6 +18,16 @@
  * 
  */
 
+/* Hack to force ANSI compliance by not using va_copy() even if present.
+ * This relies on the fact G_VA_COPY is maybe defined as va_copy in
+ * glibconfig.h, so we undef it, but gutils.h takes care of defining a
+ * compiler-specific implementation if not already defined.
+ * This needs to come before any other GLib inclusion. */
+#ifdef MIO_FORCE_ANSI
+# include <glibconfig.h>
+# undef G_VA_COPY
+#endif
+
 #include "mio.h"
 #include "mio-file.c"
 #include "mio-memory.c"
@@ -31,6 +41,31 @@
 
 
 /**
+ * SECTION:mio
+ * @short_description: The MIO object
+ * @include: mio/mio.h
+ * 
+ * The #MIO object replicates the C file I/O API with support of both standard
+ * file based operations and in-memory operations. Its goal is to ease the port
+ * of an application that uses C file I/O API to perform in-memory operations.
+ * 
+ * A #MIO object is created using mio_new_file() or mio_new_memory(), depending
+ * on whether you want file or in-memory operations, and destroyed using
+ * mio_free(). There is also some other convenient API to create file-based
+ * #MIO objects for more complex cases, such as mio_new_file_full() and
+ * mio_new_fp().
+ * 
+ * Once the #MIO object is created, you can perform standard I/O operations on
+ * it transparently without the need to care about the effective underlying
+ * operations.
+ * 
+ * The I/O API is almost exactly a replication of the standard C file I/O API
+ * with the significant difference that the first parameter is always the #MIO
+ * object to work on.
+ */
+
+
+/**
  * mio_new_file_full:
  * @filename: Filename to open, passed as-is to @open_func as the first argument
  * @mode: Mode in which open the file, passed as-is to @open_func as the second


Modified: tagmanager/mio/mio.h
2 files changed, 1 insertions(+), 1 deletions(-)
===================================================================
@@ -93,7 +93,7 @@ struct _MIOPos {
 #endif
   union {
     fpos_t file;
-    size_t mem;
+    gsize  mem;
   } impl;
 };
 


@@ Diff output truncated at 100000 characters. @@


--------------
This E-Mail was brought to you by github_commit_mail.py (Source: TBD).



More information about the Commits mailing list