diff options
author | Dan Nicholson <dbn.lists@gmail.com> | 2012-05-01 16:25:41 -0700 |
---|---|---|
committer | Dan Nicholson <dbn.lists@gmail.com> | 2012-05-10 08:14:11 -0700 |
commit | b32156ab2b365b4210257d10d2fb7570d968ce2a (patch) | |
tree | 96a47568d544098ab27bac8d4e48c7f3713f566f /glib | |
parent | bde0ffb4446d75ac22bcb4c04d76d9da3fc3c33d (diff) | |
download | pkg-config-b32156ab2b365b4210257d10d2fb7570d968ce2a.tar.gz |
glib: Update snapshot to 2.32.2
A libelf pkg-config check creeped in, but it's only used in gio so we
can remove the libelf check completely.
Diffstat (limited to 'glib')
40 files changed, 336 insertions, 229 deletions
@@ -1,3 +1,102 @@ +Overview of changes from GLib 2.32.2 to 2.32.2 +============================================== + +* GApplication: can now have a NULL application ID + +* g_clear_object: fix warnings when using it on C++ (due to lack of + ability to implicitly cast void*) + +* GDBus: + - add our own implementation of the message bus for use on Windows only + - fix up a few bugs that use of this bus uncovered in GDBus + - escape nonce files in dbus addressess (think 'c:\') + - support initial underscores in dbus codegen namespace (for private) + +* Fix misdetection of GNUstep as Cocoa (for the MacOS GSettings backend) + +* make sure configure fails if AC_CHECK_ALIGNOF cannot detect the alignment + +* GAppInfo: overwrite the DISPLAY only if it is set in the launch context + +* glib/tests/date: force US locale running the GDateTime tests + +* GSocketControlMessage: Don't warn about unknown messages + +* Resources: + - fix broken use of GVDB on big endian machines + - set a 'display name' so that pretty file names appear in Gtk CSS + warning messages + +* GMainContext: + - block child sources when blocking the parent + - introduce more testcases for child sources + +* Translations updates: + Brazilian Portuguese + French + Galician + Italian + Lithuanian + Polish + Polish + Serbian + Simplified Chinese + Spanish + +* Bug fixed: + 619026 avoid warning in gutils.h when using gcc with -Wconversion + 669260 Open/Save dialog hangs waiting for data with libsoup + 671249 GApplication: Allow a null application_id? + 672786 goa-daemon: action in notification doesn't work + 673409 g_resource_lookup_data may return stale data pointer + 674172 glib-2.32.1 misdetects GNUstep as Cocoa + 674345 cssprovider: Make sure to print out file name in css warnings + 674483 broken configure results when cross-compiling with gcc >= 4.5 + +Overview of changes from GLib 2.32.0 to 2.32.1 +============================================== + +* Bugs fixed: + 670254 glib-2.30.2: Fails /GDateTime/new_from_unix test + 672541 glib-compile-resources prepends --sourcedir to absolute paths + 673139 URL to mailing lists in README incorrect + 673174 g_input_stream_read[_finish]: document returning 0 on EOF + 673191 glib/gchecksum.c warning: dereferencing type-punned pointer... + 673216 [W32] gtestutils does not use path separators consistently + 673439 Properly deprecate g_value_{set,get}_char + 673612 Fails to decode dictionaries wrapped in two layers of array + 673803 gclosure: Support return values of GVariants + 669285 glib/tests/markup-parse fails under non-english locale + 673911 gio-2.0.pc lists full path to executables, breaking cross com.. + 673762 gnextstepsettingsbackend.c:343: error: parse error before 'in' + +* Updated translations: + Belarusian + British English + Bulgarian + Catalan + Czech + French + German + Hebrew + Hindi + Hungarian + Italian + Japanese + Kannada + Latvian + Lithuanian + Marathi + Norwegian bokmål + Odia + Polish + Serbian + Slovenian + Spanish + Swedish + Telugu + + Overview of changes from GLib 2.31.22 to 2.32.0 =============================================== diff --git a/glib/README.in b/glib/README.in index 03fa8c3..07b3185 100644 --- a/glib/README.in +++ b/glib/README.in @@ -15,7 +15,7 @@ The official web site is: http://www.gtk.org/ Information about mailing lists can be found at - http://www.gtk.org/mailing-lists.html + http://www.gtk.org/mailing-lists.php To subscribe, send mail to gtk-list-request@gnome.org with the subject "subscribe". diff --git a/glib/configure.ac b/glib/configure.ac index 4cfd8fa..d551832 100644 --- a/glib/configure.ac +++ b/glib/configure.ac @@ -31,8 +31,8 @@ m4_define(glib_configure_ac) m4_define([glib_major_version], [2]) m4_define([glib_minor_version], [32]) -m4_define([glib_micro_version], [0]) -m4_define([glib_interface_age], [0]) +m4_define([glib_micro_version], [2]) +m4_define([glib_interface_age], [2]) m4_define([glib_binary_age], [m4_eval(100 * glib_minor_version + glib_micro_version)]) m4_define([glib_version], @@ -175,11 +175,23 @@ AC_TRY_CPP([ AC_MSG_RESULT([$glib_have_carbon]) +glib_have_cocoa=no +AC_MSG_CHECKING([for Mac OS X Cocoa support]) +AC_TRY_CPP([ +#include <Cocoa/Cocoa.h> +#ifdef GNUSTEP_BASE_VERSION +#error "Detected GNUstep, not Cocoa" +#endif +], glib_have_cocoa=yes) + +AC_MSG_RESULT([$glib_have_cocoa]) + AM_CONDITIONAL(OS_WIN32, [test "$glib_native_win32" = "yes"]) AM_CONDITIONAL(OS_WIN32_X64, [test "$LIB_EXE_MACHINE_FLAG" = "X64"]) AM_CONDITIONAL(OS_UNIX, [test "$glib_native_win32" != "yes"]) AM_CONDITIONAL(OS_LINUX, [test "$glib_os_linux" = "yes"]) AM_CONDITIONAL(OS_CARBON, [test "$glib_have_carbon" = "yes"]) +AM_CONDITIONAL(OS_COCOA, [test "$glib_have_cocoa" = "yes"]) if test "$glib_native_win32" = "yes"; then AC_CHECK_TOOL(WINDRES, windres, no) @@ -210,6 +222,11 @@ if test "x$glib_have_carbon" = "xyes"; then LDFLAGS="$LDFLAGS -framework Carbon" fi +if test "x$glib_have_cocoa" = "xyes"; then + AC_DEFINE(HAVE_COCOA, 1, [define to 1 if Cocoa is available]) + LDFLAGS="$LDFLAGS -framework Foundation" +fi + gl_GLIBC21 if test "x$GLIBC21" = "xyes"; then AC_DEFINE([_GNU_SOURCE], 1, [Make all glibc extensions visible]) @@ -1763,17 +1780,6 @@ dnl failure. try libattr fi AC_SUBST(XATTR_LIBS) -dnl ************************ -dnl *** check for libelf *** -dnl ************************ - -AC_CHECK_LIB([elf], [elf_begin], have_libelf=yes, have_libelf=no) -if test $have_libelf = yes; then - AC_DEFINE(HAVE_LIBELF, 1, [Define if libelf is available]) - ELF_LIBS=-lelf -fi -AC_SUBST(ELF_LIBS) - dnl **************************************** dnl *** platform dependent source checks *** dnl **************************************** @@ -3214,7 +3220,17 @@ g_pollhup=$glib_cv_value_POLLHUP g_pollerr=$glib_cv_value_POLLERR g_pollnval=$glib_cv_value_POLLNVAL -g_af_unix=$glib_cv_value_AF_UNIX +# If a family is not found on the system, define that family to +# a negative value, picking a different one for each undefined +# family (-1 for AF_UNIX, -2 for the next one, -3 ...) +# This is needed because glib-mkenums doesn't handle optional +# values in enums, and thus we have to have all existing values +# defined in the enum. +if test "x$glib_cv_value_AF_UNIX" != "x"; then + g_af_unix=$glib_cv_value_AF_UNIX +else + g_af_unix=-1 +fi g_af_inet=$glib_cv_value_AF_INET g_af_inet6=$glib_cv_value_AF_INET6 @@ -3286,8 +3302,13 @@ $ac_cv_sizeof___int64) ;; esac -AC_CHECK_ALIGNOF([guint32], [typedef unsigned $gint32 guint32;]) -AC_CHECK_ALIGNOF([guint64], typedef unsigned $gint64 guint64;) +AC_CHECK_TYPE([guint32],,,[typedef unsigned $gint32 guint32;]) +AC_CHECK_ALIGNOF([guint32], [AC_INCLUDES_DEFAULT +typedef unsigned $gint32 guint32;]) +AC_CHECK_TYPE([guint64],,,[typedef unsigned $gint64 guint64;]) +AC_CHECK_ALIGNOF([guint64], [AC_INCLUDES_DEFAULT +typedef unsigned $gint64 guint64;]) +AC_CHECK_TYPE([unsigned long]) AC_CHECK_ALIGNOF([unsigned long]) # Check for libdbus1 - Optional - is only used in the GDBus test cases diff --git a/glib/glib/garray.c b/glib/glib/garray.c index 567774c..0cb3713 100644 --- a/glib/glib/garray.c +++ b/glib/glib/garray.c @@ -897,7 +897,7 @@ g_ptr_array_sized_new (guint reserved_size) /** * g_ptr_array_new_with_free_func: - * @element_free_func: A function to free elements with destroy @array or %NULL. + * @element_free_func: (allow-none): A function to free elements with destroy @array or %NULL. * * Creates a new #GPtrArray with a reference count of 1 and use @element_free_func * for freeing each element when the array is destroyed either via @@ -921,7 +921,7 @@ g_ptr_array_new_with_free_func (GDestroyNotify element_free_func) /** * g_ptr_array_new_full: * @reserved_size: number of pointers preallocated. - * @element_free_func: A function to free elements with destroy @array or %NULL. + * @element_free_func: (allow-none): A function to free elements with destroy @array or %NULL. * * Creates a new #GPtrArray with @reserved_size pointers preallocated * and a reference count of 1. This avoids frequent reallocation, if @@ -949,7 +949,7 @@ g_ptr_array_new_full (guint reserved_size, /** * g_ptr_array_set_free_func: * @array: A #GPtrArray. - * @element_free_func: A function to free elements with destroy @array or %NULL. + * @element_free_func: (allow-none): A function to free elements with destroy @array or %NULL. * * Sets a function for freeing each element when @array is destroyed * either via g_ptr_array_unref(), when g_ptr_array_free() is called diff --git a/glib/glib/gasyncqueue.c b/glib/glib/gasyncqueue.c index 31976bc..075266f 100644 --- a/glib/glib/gasyncqueue.c +++ b/glib/glib/gasyncqueue.c @@ -176,7 +176,7 @@ g_async_queue_ref (GAsyncQueue *queue) * * Increases the reference count of the asynchronous @queue by 1. * - * @Deprecated: Since 2.8, reference counting is done atomically + * Deprecated: 2.8: Reference counting is done atomically. * so g_async_queue_ref() can be used regardless of the @queue's * lock. */ @@ -197,7 +197,7 @@ g_async_queue_ref_unlocked (GAsyncQueue *queue) * the @queue's lock. If the reference count went to 0, the @queue * will be destroyed and the memory allocated will be freed. * - * @Deprecated: Since 2.8, reference counting is done atomically + * Deprecated: 2.8: Reference counting is done atomically. * so g_async_queue_unref() can be used regardless of the @queue's * lock. */ diff --git a/glib/glib/gbookmarkfile.c b/glib/glib/gbookmarkfile.c index 5b5ff50..edf196b 100644 --- a/glib/glib/gbookmarkfile.c +++ b/glib/glib/gbookmarkfile.c @@ -1816,7 +1816,7 @@ find_file_in_data_dirs (const gchar *file, * g_bookmark_file_load_from_data_dirs: * @bookmark: a #GBookmarkFile * @file: a relative path to a filename to open and parse - * @full_path: return location for a string containing the full path + * @full_path: (allow-none): return location for a string containing the full path * of the file, or %NULL * @error: return location for a #GError, or %NULL * @@ -1897,7 +1897,7 @@ g_bookmark_file_load_from_data_dirs (GBookmarkFile *bookmark, /** * g_bookmark_file_to_data: * @bookmark: a #GBookmarkFile - * @length: return location for the length of the returned string, or %NULL + * @length: (allow-none): return location for the length of the returned string, or %NULL * @error: return location for a #GError, or %NULL * * This function outputs @bookmark as a string. @@ -2087,7 +2087,7 @@ g_bookmark_file_has_item (GBookmarkFile *bookmark, /** * g_bookmark_file_get_uris: * @bookmark: a #GBookmarkFile - * @length: return location for the number of returned URIs, or %NULL + * @length: (allow-none): return location for the number of returned URIs, or %NULL * * Returns all URIs of the bookmarks in the bookmark file @bookmark. * The array of returned URIs will be %NULL-terminated, so @length may @@ -2131,7 +2131,7 @@ g_bookmark_file_get_uris (GBookmarkFile *bookmark, /** * g_bookmark_file_set_title: * @bookmark: a #GBookmarkFile - * @uri: a valid URI or %NULL + * @uri: (allow-none): a valid URI or %NULL * @title: a UTF-8 encoded string * * Sets @title as the title of the bookmark for @uri inside the @@ -2176,7 +2176,7 @@ g_bookmark_file_set_title (GBookmarkFile *bookmark, /** * g_bookmark_file_get_title: * @bookmark: a #GBookmarkFile - * @uri: a valid URI or %NULL + * @uri: (allow-none): a valid URI or %NULL * @error: return location for a #GError, or %NULL * * Returns the title of the bookmark for @uri. @@ -2219,7 +2219,7 @@ g_bookmark_file_get_title (GBookmarkFile *bookmark, /** * g_bookmark_file_set_description: * @bookmark: a #GBookmarkFile - * @uri: a valid URI or %NULL + * @uri: (allow-none): a valid URI or %NULL * @description: a string * * Sets @description as the description of the bookmark for @uri. @@ -2872,7 +2872,7 @@ g_bookmark_file_remove_group (GBookmarkFile *bookmark, * g_bookmark_file_set_groups: * @bookmark: a #GBookmarkFile * @uri: an item's URI - * @groups: an array of group names, or %NULL to remove all groups + * @groups: (allow-none): an array of group names, or %NULL to remove all groups * @length: number of group name values in @groups * * Sets a list of group names for the item with URI @uri. Each previously @@ -2922,7 +2922,7 @@ g_bookmark_file_set_groups (GBookmarkFile *bookmark, * g_bookmark_file_get_groups: * @bookmark: a #GBookmarkFile * @uri: a valid URI - * @length: return location for the length of the returned string, or %NULL + * @length: (allow-none): return location for the length of the returned string, or %NULL * @error: return location for a #GError, or %NULL * * Retrieves the list of group names of the bookmark for @uri. @@ -2994,9 +2994,9 @@ g_bookmark_file_get_groups (GBookmarkFile *bookmark, * g_bookmark_file_add_application: * @bookmark: a #GBookmarkFile * @uri: a valid URI - * @name: the name of the application registering the bookmark + * @name: (allow-none): the name of the application registering the bookmark * or %NULL - * @exec: command line to be used to launch the bookmark or %NULL + * @exec: (allow-none): command line to be used to launch the bookmark or %NULL * * Adds the application with @name and @exec to the list of * applications that have registered a bookmark for @uri into @@ -3344,9 +3344,9 @@ expand_exec_line (const gchar *exec_fmt, * @bookmark: a #GBookmarkFile * @uri: a valid URI * @name: an application's name - * @exec: location for the command line of the application, or %NULL - * @count: return location for the registration count, or %NULL - * @stamp: return location for the last registration time, or %NULL + * @exec: (allow-none): location for the command line of the application, or %NULL + * @count: (allow-none): return location for the registration count, or %NULL + * @stamp: (allow-none): return location for the last registration time, or %NULL * @error: return location for a #GError, or %NULL * * Gets the registration informations of @app_name for the bookmark for @@ -3444,7 +3444,7 @@ g_bookmark_file_get_app_info (GBookmarkFile *bookmark, * g_bookmark_file_get_applications: * @bookmark: a #GBookmarkFile * @uri: a valid URI - * @length: return location of the length of the returned list, or %NULL + * @length: (allow-none): return location of the length of the returned list, or %NULL * @error: return location for a #GError, or %NULL * * Retrieves the names of the applications that have registered the @@ -3536,7 +3536,7 @@ g_bookmark_file_get_size (GBookmarkFile *bookmark) * g_bookmark_file_move_item: * @bookmark: a #GBookmarkFile * @old_uri: a valid URI - * @new_uri: a valid URI, or %NULL + * @new_uri: (allow-none): a valid URI, or %NULL * @error: return location for a #GError or %NULL * * Changes the URI of a bookmark item from @old_uri to @new_uri. Any @@ -3615,7 +3615,7 @@ g_bookmark_file_move_item (GBookmarkFile *bookmark, * g_bookmark_file_set_icon: * @bookmark: a #GBookmarkFile * @uri: a valid URI - * @href: the URI of the icon for the bookmark, or %NULL + * @href: (allow-none): the URI of the icon for the bookmark, or %NULL * @mime_type: the MIME type of the icon for the bookmark * * Sets the icon for the bookmark for @uri. If @href is %NULL, unsets @@ -3664,8 +3664,8 @@ g_bookmark_file_set_icon (GBookmarkFile *bookmark, * g_bookmark_file_get_icon: * @bookmark: a #GBookmarkFile * @uri: a valid URI - * @href: return location for the icon's location or %NULL - * @mime_type: return location for the icon's MIME type or %NULL + * @href: (allow-none): return location for the icon's location or %NULL + * @mime_type: (allow-none): return location for the icon's MIME type or %NULL * @error: return location for a #GError or %NULL * * Gets the icon of the bookmark for @uri. diff --git a/glib/glib/gbytes.h b/glib/glib/gbytes.h index a120e21..de3c8f8 100644 --- a/glib/glib/gbytes.h +++ b/glib/glib/gbytes.h @@ -21,6 +21,10 @@ * Stef Walter <stefw@collabora.co.uk> */ +#if !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) +#error "Only <glib.h> can be included directly." +#endif + #ifndef __G_BYTES_H__ #define __G_BYTES_H__ diff --git a/glib/glib/gchecksum.c b/glib/glib/gchecksum.c index e860243..f543d96 100644 --- a/glib/glib/gchecksum.c +++ b/glib/glib/gchecksum.c @@ -67,7 +67,10 @@ typedef struct guint32 buf[4]; guint32 bits[2]; - guchar data[MD5_DATASIZE]; + union { + guchar data[MD5_DATASIZE]; + guint32 data32[MD5_DATASIZE / 4]; + } u; guchar digest[MD5_DIGEST_LEN]; } Md5sum; @@ -329,13 +332,13 @@ md5_sum_update (Md5sum *md5, md5->bits[1] += length >> 29; - /* bytes already in Md5sum->data */ + /* bytes already in Md5sum->u.data */ bit = (bit >> 3) & 0x3f; /* handle any leading odd-sized chunks */ if (bit) { - guchar *p = (guchar *) md5->data + bit; + guchar *p = md5->u.data + bit; bit = MD5_DATASIZE - bit; if (length < bit) @@ -346,8 +349,8 @@ md5_sum_update (Md5sum *md5, memcpy (p, data, bit); - md5_byte_reverse (md5->data, 16); - md5_transform (md5->buf, (guint32 *) md5->data); + md5_byte_reverse (md5->u.data, 16); + md5_transform (md5->buf, md5->u.data32); data += bit; length -= bit; @@ -356,17 +359,17 @@ md5_sum_update (Md5sum *md5, /* process data in 64-byte chunks */ while (length >= MD5_DATASIZE) { - memcpy (md5->data, data, MD5_DATASIZE); + memcpy (md5->u.data, data, MD5_DATASIZE); - md5_byte_reverse (md5->data, 16); - md5_transform (md5->buf, (guint32 *) md5->data); + md5_byte_reverse (md5->u.data, 16); + md5_transform (md5->buf, md5->u.data32); data += MD5_DATASIZE; length -= MD5_DATASIZE; } /* handle any remaining bytes of data */ - memcpy (md5->data, data, length); + memcpy (md5->u.data, data, length); } /* closes a checksum */ @@ -382,7 +385,7 @@ md5_sum_close (Md5sum *md5) /* Set the first char of padding to 0x80. * This is safe since there is always at least one byte free */ - p = md5->data + count; + p = md5->u.data + count; *p++ = 0x80; /* Bytes of padding needed to make 64 bytes */ @@ -394,11 +397,11 @@ md5_sum_close (Md5sum *md5) /* Two lots of padding: Pad the first block to 64 bytes */ memset (p, 0, count); - md5_byte_reverse (md5->data, 16); - md5_transform (md5->buf, (guint32 *) md5->data); + md5_byte_reverse (md5->u.data, 16); + md5_transform (md5->buf, md5->u.data32); /* Now fill the next block with 56 bytes */ - memset (md5->data, 0, MD5_DATASIZE - 8); + memset (md5->u.data, 0, MD5_DATASIZE - 8); } else { @@ -406,20 +409,20 @@ md5_sum_close (Md5sum *md5) memset (p, 0, count - 8); } - md5_byte_reverse (md5->data, 14); + md5_byte_reverse (md5->u.data, 14); /* Append length in bits and transform */ - ((guint32 *) md5->data)[14] = md5->bits[0]; - ((guint32 *) md5->data)[15] = md5->bits[1]; + md5->u.data32[14] = md5->bits[0]; + md5->u.data32[15] = md5->bits[1]; - md5_transform (md5->buf, (guint32 *) md5->data); + md5_transform (md5->buf, md5->u.data32); md5_byte_reverse ((guchar *) md5->buf, 4); memcpy (md5->digest, md5->buf, 16); /* Reset buffers in case they contain sensitive data */ memset (md5->buf, 0, sizeof (md5->buf)); - memset (md5->data, 0, sizeof (md5->data)); + memset (md5->u.data, 0, sizeof (md5->u.data)); } static gchar * diff --git a/glib/glib/gconvert.c b/glib/glib/gconvert.c index 3b2d396..e18f3c1 100644 --- a/glib/glib/gconvert.c +++ b/glib/glib/gconvert.c @@ -1838,7 +1838,7 @@ hostname_validate (const char *hostname) /** * g_filename_from_uri: * @uri: a uri describing a filename (escaped, encoded in ASCII). - * @hostname: Location to store hostname for the URI, or %NULL. + * @hostname: (allow-none): Location to store hostname for the URI, or %NULL. * If there is no hostname in the URI, %NULL will be * stored in this location. * @error: location to store the error occurring, or %NULL to ignore diff --git a/glib/glib/gdataset.c b/glib/glib/gdataset.c index 263ae18..80f5094 100644 --- a/glib/glib/gdataset.c +++ b/glib/glib/gdataset.c @@ -598,7 +598,7 @@ g_dataset_id_set_data_full (gconstpointer dataset_location, * g_datalist_id_set_data_full: * @datalist: a datalist. * @key_id: the #GQuark to identify the data element. - * @data: the data element or %NULL to remove any previous element + * @data: (allow-none): the data element or %NULL to remove any previous element * corresponding to @key_id. * @destroy_func: the function to call when the data element is * removed. This function will be called with the data @@ -615,7 +615,7 @@ g_dataset_id_set_data_full (gconstpointer dataset_location, * g_datalist_set_data_full: * @dl: a datalist. * @k: the string to identify the data element. - * @d: the data element, or %NULL to remove any previous element + * @d: (allow-none): the data element, or %NULL to remove any previous element * corresponding to @k. * @f: the function to call when the data element is removed. This * function will be called with the data element and can be used to @@ -629,7 +629,7 @@ g_dataset_id_set_data_full (gconstpointer dataset_location, * g_datalist_id_set_data: * @dl: a datalist. * @q: the #GQuark to identify the data element. - * @d: the data element, or %NULL to remove any previous element + * @d: (allow-none): the data element, or %NULL to remove any previous element * corresponding to @q. * * Sets the data corresponding to the given #GQuark id. Any previous @@ -640,7 +640,7 @@ g_dataset_id_set_data_full (gconstpointer dataset_location, * g_datalist_set_data: * @dl: a datalist. * @k: the string to identify the data element. - * @d: the data element, or %NULL to remove any previous element + * @d: (allow-none): the data element, or %NULL to remove any previous element * corresponding to @k. * * Sets the data element corresponding to the given string identifier. diff --git a/glib/glib/gdatetime.c b/glib/glib/gdatetime.c index 69e806e..7f78b84 100644 --- a/glib/glib/gdatetime.c +++ b/glib/glib/gdatetime.c @@ -1449,9 +1449,9 @@ g_date_time_equal (gconstpointer dt1, /** * g_date_time_get_ymd: * @datetime: a #GDateTime. - * @year: (out): the return location for the gregorian year, or %NULL. - * @month: (out): the return location for the month of the year, or %NULL. - * @day: (out): the return location for the day of the month, or %NULL. + * @year: (out) (allow-none): the return location for the gregorian year, or %NULL. + * @month: (out) (allow-none): the return location for the month of the year, or %NULL. + * @day: (out) (allow-none): the return location for the day of the month, or %NULL. * * Retrieves the Gregorian day, month, and year of a given #GDateTime. * diff --git a/glib/glib/gerror.c b/glib/glib/gerror.c index 6cc3cfb..e6ce3c0 100644 --- a/glib/glib/gerror.c +++ b/glib/glib/gerror.c @@ -507,7 +507,7 @@ g_error_copy (const GError *error) /** * g_error_matches: - * @error: a #GError or %NULL + * @error: (allow-none): a #GError or %NULL * @domain: an error domain * @code: an error code * @@ -533,7 +533,7 @@ g_error_matches (const GError *error, /** * g_set_error: - * @err: a return location for a #GError, or %NULL + * @err: (allow-none): a return location for a #GError, or %NULL * @domain: error domain * @code: error code * @format: printf()-style format @@ -568,7 +568,7 @@ g_set_error (GError **err, /** * g_set_error_literal: - * @err: a return location for a #GError, or %NULL + * @err: (allow-none): a return location for a #GError, or %NULL * @domain: error domain * @code: error code * @message: error message @@ -662,7 +662,7 @@ g_error_add_prefix (gchar **string, /** * g_prefix_error: - * @err: a return location for a #GError, or %NULL + * @err: (allow-none): a return location for a #GError, or %NULL * @format: printf()-style format string * @...: arguments to @format * diff --git a/glib/glib/ggettext.c b/glib/glib/ggettext.c index 41b8abc..ff1bb6b 100644 --- a/glib/glib/ggettext.c +++ b/glib/glib/ggettext.c @@ -184,7 +184,7 @@ g_strip_context (const gchar *msgid, /** * g_dpgettext: - * @domain: the translation domain to use, or %NULL to use + * @domain: (allow-none): the translation domain to use, or %NULL to use * the domain set with textdomain() * @msgctxtid: a combined message context and message id, separated * by a \004 character @@ -248,7 +248,7 @@ g_dpgettext (const gchar *domain, */ /** * g_dpgettext2: - * @domain: the translation domain to use, or %NULL to use + * @domain: (allow-none): the translation domain to use, or %NULL to use * the domain set with textdomain() * @context: the message context * @msgid: the message @@ -350,7 +350,7 @@ _g_dgettext_should_translate (void) /** * g_dgettext: - * @domain: the translation domain to use, or %NULL to use + * @domain: (allow-none): the translation domain to use, or %NULL to use * the domain set with textdomain() * @msgid: message to translate * @@ -428,7 +428,7 @@ g_dcgettext (const gchar *domain, /** * g_dngettext: - * @domain: the translation domain to use, or %NULL to use + * @domain: (allow-none): the translation domain to use, or %NULL to use * the domain set with textdomain() * @msgid: message to translate * @msgid_plural: plural form of the message diff --git a/glib/glib/ghash.c b/glib/glib/ghash.c index e204a40..3fc5b5a 100644 --- a/glib/glib/ghash.c +++ b/glib/glib/ghash.c @@ -664,10 +664,10 @@ g_hash_table_new (GHashFunc hash_func, * g_hash_table_new_full: * @hash_func: a function to create a hash value from a key * @key_equal_func: a function to check two keys for equality - * @key_destroy_func: a function to free the memory allocated for the key + * @key_destroy_func: (allow-none): a function to free the memory allocated for the key * used when removing the entry from the #GHashTable, or %NULL * if you don't want to supply such a function. - * @value_destroy_func: a function to free the memory allocated for the + * @value_destroy_func: (allow-none): a function to free the memory allocated for the * value used when removing the entry from the #GHashTable, or %NULL * if you don't want to supply such a function. * @@ -745,8 +745,8 @@ g_hash_table_iter_init (GHashTableIter *iter, /** * g_hash_table_iter_next: * @iter: an initialized #GHashTableIter - * @key: a location to store the key, or %NULL - * @value: a location to store the value, or %NULL + * @key: (allow-none): a location to store the key, or %NULL + * @value: (allow-none): a location to store the value, or %NULL * * Advances @iter and retrieves the key and/or value that are now * pointed to as a result of this advancement. If %FALSE is returned, @@ -855,7 +855,7 @@ g_hash_table_iter_remove (GHashTableIter *iter) * @hash_table: our #GHashTable * @node_index: pointer to node to insert/replace * @key_hash: key hash - * @key: key to replace with, or %NULL + * @key: (allow-none): key to replace with, or %NULL * @value: value to replace with * @keep_new_key: whether to replace the key in the node with @key * @reusing_key: whether @key was taken out of the existing node diff --git a/glib/glib/giochannel.c b/glib/glib/giochannel.c index f294701..32099f7 100644 --- a/glib/glib/giochannel.c +++ b/glib/glib/giochannel.c @@ -116,7 +116,7 @@ * various functions such as g_io_channel_write_chars() to * write raw bytes to the channel. Encoding and buffering * issues are dealt with at a higher level. - * @io_seek: (optional) seeks the channel. This is called from + * @io_seek: (optional) seeks the channel. This is called from * g_io_channel_seek() on channels that support it. * @io_close: closes the channel. This is called from * g_io_channel_close() after flushing the buffers. @@ -1653,8 +1653,8 @@ reencode: * line terminator. This data should be freed with g_free() * when no longer needed. This is a nul-terminated string. * If a @length of zero is returned, this will be %NULL instead. - * @length: location to store length of the read data, or %NULL - * @terminator_pos: location to store position of line terminator, or %NULL + * @length: (allow-none): location to store length of the read data, or %NULL + * @terminator_pos: (allow-none): location to store position of line terminator, or %NULL * @error: A location to return an error of type #GConvertError * or #GIOChannelError * @@ -1704,7 +1704,7 @@ g_io_channel_read_line (GIOChannel *channel, * @buffer: a #GString into which the line will be written. * If @buffer already contains data, the old data will * be overwritten. - * @terminator_pos: location to store position of line terminator, or %NULL + * @terminator_pos: (allow-none): location to store position of line terminator, or %NULL * @error: a location to store an error of type #GConvertError * or #GIOChannelError * diff --git a/glib/glib/gkeyfile.c b/glib/glib/gkeyfile.c index 62ad387..949c8b2 100644 --- a/glib/glib/gkeyfile.c +++ b/glib/glib/gkeyfile.c @@ -920,7 +920,7 @@ g_key_file_load_from_data (GKeyFile *key_file, * @key_file: an empty #GKeyFile struct * @file: (type filename): a relative path to a filename to open and parse * @search_dirs: (array zero-terminated=1) (element-type filename): %NULL-terminated array of directories to search - * @full_path: (out) (type filename): return location for a string containing the full path + * @full_path: (out) (type filename) (allow-none): return location for a string containing the full path * of the file, or %NULL * @flags: flags from #GKeyFileFlags * @error: return location for a #GError, or %NULL @@ -993,7 +993,7 @@ g_key_file_load_from_dirs (GKeyFile *key_file, * g_key_file_load_from_data_dirs: * @key_file: an empty #GKeyFile struct * @file: (type filename): a relative path to a filename to open and parse - * @full_path: (out) (type filename): return location for a string containing the full path + * @full_path: (out) (type filename) (allow-none): return location for a string containing the full path * of the file, or %NULL * @flags: flags from #GKeyFileFlags * @error: return location for a #GError, or %NULL @@ -1504,7 +1504,7 @@ g_key_file_to_data (GKeyFile *key_file, * g_key_file_get_keys: * @key_file: a #GKeyFile * @group_name: a group name - * @length: (out): return location for the number of keys returned, or %NULL + * @length: (out) (allow-none): return location for the number of keys returned, or %NULL * @error: return location for a #GError, or %NULL * * Returns all keys for the group name @group_name. The array of @@ -3439,7 +3439,7 @@ g_key_file_get_top_comment (GKeyFile *key_file, /** * g_key_file_get_comment: * @key_file: a #GKeyFile - * @group_name: a group name, or %NULL + * @group_name: (allow-none): a group name, or %NULL * @key: a key * @error: return location for a #GError * diff --git a/glib/glib/gmain.c b/glib/glib/gmain.c index 077a935..760f179 100644 --- a/glib/glib/gmain.c +++ b/glib/glib/gmain.c @@ -191,7 +191,8 @@ typedef struct _GSourceCallback GSourceCallback; typedef enum { G_SOURCE_READY = 1 << G_HOOK_FLAG_USER_SHIFT, - G_SOURCE_CAN_RECURSE = 1 << (G_HOOK_FLAG_USER_SHIFT + 1) + G_SOURCE_CAN_RECURSE = 1 << (G_HOOK_FLAG_USER_SHIFT + 1), + G_SOURCE_BLOCKED = 1 << (G_HOOK_FLAG_USER_SHIFT + 2) } GSourceFlags; typedef struct _GMainWaiter GMainWaiter; @@ -313,8 +314,7 @@ struct _GSourcePrivate #define G_THREAD_SELF g_thread_self () #define SOURCE_DESTROYED(source) (((source)->flags & G_HOOK_FLAG_ACTIVE) == 0) -#define SOURCE_BLOCKED(source) (((source)->flags & G_HOOK_FLAG_IN_CALL) != 0 && \ - ((source)->flags & G_SOURCE_CAN_RECURSE) == 0) +#define SOURCE_BLOCKED(source) (((source)->flags & G_SOURCE_BLOCKED) != 0) #define SOURCE_UNREF(source, context) \ G_STMT_START { \ @@ -618,7 +618,7 @@ static GPrivate thread_context_stack = G_PRIVATE_INIT (free_context_stack); /** * g_main_context_push_thread_default: - * @context: a #GMainContext, or %NULL for the global default context + * @context: (allow-none): a #GMainContext, or %NULL for the global default context * * Acquires @context and sets it as the thread-default context for the * current thread. This will cause certain asynchronous operations @@ -677,7 +677,7 @@ g_main_context_push_thread_default (GMainContext *context) /** * g_main_context_pop_thread_default: - * @context: a #GMainContext object, or %NULL + * @context: (allow-none): a #GMainContext object, or %NULL * * Pops @context off the thread-default context stack (verifying that * it was on the top of the stack). @@ -1049,7 +1049,7 @@ g_source_get_id (GSource *source) * Gets the #GMainContext with which the source is associated. * Calling this function on a destroyed source is an error. * - * Return value: (transfer none): the #GMainContext with which the + * Return value: (transfer none) (allow-none): the #GMainContext with which the * source is associated, or %NULL if the context has not * yet been added to a source. **/ @@ -1313,7 +1313,7 @@ static GSourceCallbackFuncs g_source_callback_funcs = { * @source: the source * @func: a callback function * @data: the data to pass to callback function - * @notify: a function to call when @data is no longer in use, or %NULL. + * @notify: (allow-none): a function to call when @data is no longer in use, or %NULL. * * Sets the callback function for a source. The callback for a source is * called from the source's dispatch function. @@ -1699,7 +1699,7 @@ g_source_unref (GSource *source) /** * g_main_context_find_source_by_id: - * @context: a #GMainContext (if %NULL, the default context will be used) + * @context: (allow-none): a #GMainContext (if %NULL, the default context will be used) * @source_id: the source ID, as returned by g_source_get_id(). * * Finds a #GSource given a pair of context and ID. @@ -1735,7 +1735,7 @@ g_main_context_find_source_by_id (GMainContext *context, /** * g_main_context_find_source_by_funcs_user_data: - * @context: a #GMainContext (if %NULL, the default context will be used). + * @context: (allow-none): a #GMainContext (if %NULL, the default context will be used). * @funcs: the @source_funcs passed to g_source_new(). * @user_data: the user data from the callback. * @@ -2067,7 +2067,7 @@ g_get_monotonic_time (void) * 32bit msec counter, updated each ~15msec, wraps in ~50 days * - GetTickCount64 (GTC64) * Same as GetTickCount, but extended to 64bit, so no wrap - * Only availible in Vista or later + * Only available in Vista or later * - timeGetTime (TGT) * similar to GetTickCount by default: 15msec, 50 day wrap. * available in winmm.dll (thus known as the multimedia timers) @@ -2094,7 +2094,7 @@ g_get_monotonic_time (void) * However this seems quite complicated, so we're not doing this right now. * * The approach we take instead is to use the TGT timer, extending it to 64bit - * either by using the GTC64 value, or if that is not availible, a process local + * either by using the GTC64 value, or if that is not available, a process local * time epoch that we increment when we detect a timer wrap (assumes that we read * the time at least once every 50 days). * @@ -2426,12 +2426,24 @@ block_source (GSource *source) g_return_if_fail (!SOURCE_BLOCKED (source)); + source->flags |= G_SOURCE_BLOCKED; + tmp_list = source->poll_fds; while (tmp_list) { g_main_context_remove_poll_unlocked (source->context, tmp_list->data); tmp_list = tmp_list->next; } + + if (source->priv && source->priv->child_sources) + { + tmp_list = source->priv->child_sources; + while (tmp_list) + { + block_source (tmp_list->data); + tmp_list = tmp_list->next; + } + } } /* HOLDS: source->context's lock */ @@ -2440,15 +2452,27 @@ unblock_source (GSource *source) { GSList *tmp_list; - g_return_if_fail (!SOURCE_BLOCKED (source)); /* Source already unblocked */ + g_return_if_fail (SOURCE_BLOCKED (source)); /* Source already unblocked */ g_return_if_fail (!SOURCE_DESTROYED (source)); + source->flags &= ~G_SOURCE_BLOCKED; + tmp_list = source->poll_fds; while (tmp_list) { g_main_context_add_poll_unlocked (source->context, source->priority, tmp_list->data); tmp_list = tmp_list->next; } + + if (source->priv && source->priv->child_sources) + { + tmp_list = source->priv->child_sources; + while (tmp_list) + { + unblock_source (tmp_list->data); + tmp_list = tmp_list->next; + } + } } /* HOLDS: context's lock */ @@ -2527,8 +2551,7 @@ g_main_dispatch (GMainContext *context) if (!was_in_call) source->flags &= ~G_HOOK_FLAG_IN_CALL; - if ((source->flags & G_SOURCE_CAN_RECURSE) == 0 && - !SOURCE_DESTROYED (source)) + if (SOURCE_BLOCKED (source) && !SOURCE_DESTROYED (source)) unblock_source (source); /* Note: this depends on the fact that we can't switch @@ -3131,7 +3154,7 @@ g_main_context_iterate (GMainContext *context, /** * g_main_context_pending: - * @context: a #GMainContext (if %NULL, the default context will be used) + * @context: (allow-none): a #GMainContext (if %NULL, the default context will be used) * * Checks if any sources have pending events for the given context. * @@ -3154,7 +3177,7 @@ g_main_context_pending (GMainContext *context) /** * g_main_context_iteration: - * @context: a #GMainContext (if %NULL, the default context will be used) + * @context: (allow-none): a #GMainContext (if %NULL, the default context will be used) * @may_block: whether the call may block. * * Runs a single iteration for the given main loop. This involves @@ -3474,7 +3497,7 @@ g_main_context_poll (GMainContext *context, /** * g_main_context_add_poll: - * @context: a #GMainContext (or %NULL for the default context) + * @context: (allow-none): a #GMainContext (or %NULL for the default context) * @fd: a #GPollFD structure holding information about a file * descriptor to watch. * @priority: the priority for this file descriptor which should be @@ -3934,7 +3957,7 @@ g_timeout_source_new_seconds (guint interval) * (1/1000ths of a second) * @function: function to call * @data: data to pass to @function - * @notify: function to call when the timeout is removed, or %NULL + * @notify: (allow-none): function to call when the timeout is removed, or %NULL * * Sets a function to be called at regular intervals, with the given * priority. The function is called repeatedly until it returns @@ -4032,7 +4055,7 @@ g_timeout_add (guint32 interval, * @interval: the time between calls to the function, in seconds * @function: function to call * @data: data to pass to @function - * @notify: function to call when the timeout is removed, or %NULL + * @notify: (allow-none): function to call when the timeout is removed, or %NULL * * Sets a function to be called at regular intervals, with @priority. * The function is called repeatedly until it returns %FALSE, at which @@ -4513,7 +4536,7 @@ g_child_watch_source_new (GPid pid) * Windows a handle for a process (which doesn't have to be a child). * @function: function to call * @data: data to pass to @function - * @notify: function to call when the idle is removed, or %NULL + * @notify: (allow-none): function to call when the idle is removed, or %NULL * * Sets a function to be called when the child indicated by @pid * exits, at the priority @priority. @@ -4664,7 +4687,7 @@ g_idle_source_new (void) * range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE. * @function: function to call * @data: data to pass to @function - * @notify: function to call when the idle is removed, or %NULL + * @notify: (allow-none): function to call when the idle is removed, or %NULL * * Adds a function to be called whenever there are no higher priority * events pending. If the function returns %FALSE it is automatically @@ -4784,7 +4807,7 @@ g_main_context_invoke (GMainContext *context, * @priority: the priority at which to run @function * @function: function to call * @data: data to pass to @function - * @notify: a function to call when @data is no longer in use, or %NULL. + * @notify: (allow-none): a function to call when @data is no longer in use, or %NULL. * * Invokes a function in such a way that @context is owned during the * invocation of @function. diff --git a/glib/glib/gmem.c b/glib/glib/gmem.c index 488bff8..1f01cd1 100644 --- a/glib/glib/gmem.c +++ b/glib/glib/gmem.c @@ -305,7 +305,7 @@ g_try_malloc0 (gsize n_bytes) /** * g_try_realloc: - * @mem: previously-allocated memory, or %NULL. + * @mem: (allow-none): previously-allocated memory, or %NULL. * @n_bytes: number of bytes to allocate. * * Attempts to realloc @mem to a new size, @n_bytes, and returns %NULL @@ -455,7 +455,7 @@ g_try_malloc0_n (gsize n_blocks, /** * g_try_realloc_n: - * @mem: previously-allocated memory, or %NULL. + * @mem: (allow-none): previously-allocated memory, or %NULL. * @n_blocks: the number of blocks to allocate * @n_block_bytes: the size of each block in bytes * @@ -494,7 +494,7 @@ fallback_calloc (gsize n_blocks, static gboolean vtable_set = FALSE; /** - * g_mem_is_system_malloc + * g_mem_is_system_malloc: * * Checks whether the allocator used by g_malloc() is the system's * malloc implementation. If it returns %TRUE memory allocated with @@ -659,7 +659,6 @@ profile_print_locked (guint *local_data, /** * g_mem_profile: - * @void: * * Outputs a summary of memory usage. * diff --git a/glib/glib/gmessages.c b/glib/glib/gmessages.c index 4230f08..f32d51c 100644 --- a/glib/glib/gmessages.c +++ b/glib/glib/gmessages.c @@ -448,7 +448,7 @@ g_log_set_fatal_mask (const gchar *log_domain, /** * g_log_set_handler: - * @log_domain: the log domain, or %NULL for the default "" + * @log_domain: (allow-none): the log domain, or %NULL for the default "" * application domain * @log_levels: the log levels to apply the log handler for. * To handle fatal and recursive messages as well, combine diff --git a/glib/glib/goption.c b/glib/glib/goption.c index c1c520d..f5372ff 100644 --- a/glib/glib/goption.c +++ b/glib/glib/goption.c @@ -258,36 +258,16 @@ _g_unichar_get_width (gunichar c) } static glong -_g_utf8_strwidth (const gchar *p, - gssize max) +_g_utf8_strwidth (const gchar *p) { glong len = 0; const gchar *start = p; - g_return_val_if_fail (p != NULL || max == 0, 0); + g_return_val_if_fail (p != NULL, 0); - if (max < 0) + while (*p) { - while (*p) - { - len += _g_unichar_get_width (g_utf8_get_char (p)); - p = g_utf8_next_char (p); - } - } - else - { - if (max == 0 || !*p) - return 0; - - /* this case may not be quite correct */ - len += _g_unichar_get_width (g_utf8_get_char (p)); p = g_utf8_next_char (p); - - while (p - start < max && *p) - { - len += _g_unichar_get_width (g_utf8_get_char (p)); - p = g_utf8_next_char (p); - } } return len; @@ -559,7 +539,7 @@ g_option_context_get_main_group (GOptionContext *context) * g_option_context_add_main_entries: * @context: a #GOptionContext * @entries: a %NULL-terminated array of #GOptionEntry<!-- -->s - * @translation_domain: a translation domain to use for translating + * @translation_domain: (allow-none): a translation domain to use for translating * the <option>--help</option> output for the options in @entries * with gettext(), or %NULL * @@ -597,13 +577,13 @@ calculate_max_length (GOptionGroup *group) if (entry->flags & G_OPTION_FLAG_HIDDEN) continue; - len = _g_utf8_strwidth (entry->long_name, -1); + len = _g_utf8_strwidth (entry->long_name); if (entry->short_name) len += 4; if (!NO_ARG (entry) && entry->arg_description) - len += 1 + _g_utf8_strwidth (TRANSLATE (group, entry->arg_description), -1); + len += 1 + _g_utf8_strwidth (TRANSLATE (group, entry->arg_description)); max_length = MAX (max_length, len); } @@ -636,7 +616,7 @@ print_entry (GOptionGroup *group, g_string_append_printf (str, "=%s", TRANSLATE (group, entry->arg_description)); g_string_append_printf (string, "%s%*s %s\n", str->str, - (int) (max_length + 4 - _g_utf8_strwidth (str->str, -1)), "", + (int) (max_length + 4 - _g_utf8_strwidth (str->str)), "", entry->description ? TRANSLATE (group, entry->description) : ""); g_string_free (str, TRUE); } @@ -716,7 +696,7 @@ context_has_h_entry (GOptionContext *context) * g_option_context_get_help: * @context: a #GOptionContext * @main_help: if %TRUE, only include the main group - * @group: the #GOptionGroup to create help for, or %NULL + * @group: (allow-none): the #GOptionGroup to create help for, or %NULL * * Returns a formatted, translated help text for the given context. * To obtain the text produced by <option>--help</option>, call @@ -830,11 +810,11 @@ g_option_context_get_help (GOptionContext *context, list = context->groups; - max_length = _g_utf8_strwidth ("-?, --help", -1); + max_length = _g_utf8_strwidth ("-?, --help"); if (list) { - len = _g_utf8_strwidth ("--help-all", -1); + len = _g_utf8_strwidth ("--help-all"); max_length = MAX (max_length, len); } @@ -849,7 +829,7 @@ g_option_context_get_help (GOptionContext *context, GOptionGroup *g = list->data; /* First, we check the --help-<groupname> options */ - len = _g_utf8_strwidth ("--help-", -1) + _g_utf8_strwidth (g->name, -1); + len = _g_utf8_strwidth ("--help-") + _g_utf8_strwidth (g->name); max_length = MAX (max_length, len); /* Then we go through the entries */ @@ -2087,9 +2067,9 @@ g_option_context_parse (GOptionContext *context, * @help_description: a description for the <option>--help-</option>@name option. * This string is translated using the translation domain or translation function * of the group - * @user_data: user data that will be passed to the pre- and post-parse hooks, + * @user_data: (allow-none): user data that will be passed to the pre- and post-parse hooks, * the error hook and to callbacks of %G_OPTION_ARG_CALLBACK options, or %NULL - * @destroy: a function that will be called to free @user_data, or %NULL + * @destroy: (allow-none): a function that will be called to free @user_data, or %NULL * * Creates a new #GOptionGroup. * @@ -2208,8 +2188,8 @@ g_option_group_add_entries (GOptionGroup *group, /** * g_option_group_set_parse_hooks: * @group: a #GOptionGroup - * @pre_parse_func: a function to call before parsing, or %NULL - * @post_parse_func: a function to call after parsing, or %NULL + * @pre_parse_func: (allow-none): a function to call before parsing, or %NULL + * @post_parse_func: (allow-none): a function to call after parsing, or %NULL * * Associates two functions with @group which will be called * from g_option_context_parse() before the first option is parsed @@ -2258,9 +2238,9 @@ g_option_group_set_error_hook (GOptionGroup *group, /** * g_option_group_set_translate_func: * @group: a #GOptionGroup - * @func: the #GTranslateFunc, or %NULL - * @data: user data to pass to @func, or %NULL - * @destroy_notify: a function which gets called to free @data, or %NULL + * @func: (allow-none): the #GTranslateFunc, or %NULL + * @data: (allow-none): user data to pass to @func, or %NULL + * @destroy_notify: (allow-none): a function which gets called to free @data, or %NULL * * Sets the function which is used to translate user-visible * strings, for <option>--help</option> output. Different @@ -2320,9 +2300,9 @@ g_option_group_set_translation_domain (GOptionGroup *group, /** * g_option_context_set_translate_func: * @context: a #GOptionContext - * @func: the #GTranslateFunc, or %NULL - * @data: user data to pass to @func, or %NULL - * @destroy_notify: a function which gets called to free @data, or %NULL + * @func: (allow-none): the #GTranslateFunc, or %NULL + * @data: (allow-none): user data to pass to @func, or %NULL + * @destroy_notify: (allow-none): a function which gets called to free @data, or %NULL * * Sets the function which is used to translate the contexts * user-visible strings, for <option>--help</option> output. @@ -2379,7 +2359,7 @@ g_option_context_set_translation_domain (GOptionContext *context, /** * g_option_context_set_summary: * @context: a #GOptionContext - * @summary: a string to be shown in <option>--help</option> output + * @summary: (allow-none): a string to be shown in <option>--help</option> output * before the list of options, or %NULL * * Adds a string to be displayed in <option>--help</option> output @@ -2424,7 +2404,7 @@ g_option_context_get_summary (GOptionContext *context) /** * g_option_context_set_description: * @context: a #GOptionContext - * @description: a string to be shown in <option>--help</option> output + * @description: (allow-none): a string to be shown in <option>--help</option> output * after the list of options, or %NULL * * Adds a string to be displayed in <option>--help</option> output diff --git a/glib/glib/gpattern.c b/glib/glib/gpattern.c index 7770d9c..bc0cc71 100644 --- a/glib/glib/gpattern.c +++ b/glib/glib/gpattern.c @@ -167,7 +167,7 @@ g_pattern_ph_match (const gchar *match_pattern, * @string_length: the length of @string (in bytes, i.e. strlen(), * <emphasis>not</emphasis> g_utf8_strlen()) * @string: the UTF-8 encoded string to match - * @string_reversed: the reverse of @string or %NULL + * @string_reversed: (allow-none): the reverse of @string or %NULL * @Returns: %TRUE if @string matches @pspec * * Matches a string against a compiled pattern. Passing the correct diff --git a/glib/glib/gqueue.c b/glib/glib/gqueue.c index d9ee3a8..64117eb 100644 --- a/glib/glib/gqueue.c +++ b/glib/glib/gqueue.c @@ -794,7 +794,7 @@ g_queue_link_index (GQueue *queue, } /** - * g_queue_unlink + * g_queue_unlink: * @queue: a #GQueue * @link_: a #GList link that <emphasis>must</emphasis> be part of @queue * diff --git a/glib/glib/gregex.c b/glib/glib/gregex.c index ffffda7..bf82bd1 100644 --- a/glib/glib/gregex.c +++ b/glib/glib/gregex.c @@ -779,7 +779,7 @@ g_match_info_is_partial_match (const GMatchInfo *match_info) /** * g_match_info_expand_references: - * @match_info: a #GMatchInfo or %NULL + * @match_info: (allow-none): a #GMatchInfo or %NULL * @string_to_expand: the string to expand * @error: location to store the error occurring, or %NULL to ignore errors * diff --git a/glib/glib/gscanner.c b/glib/glib/gscanner.c index c933e6d..ce56142 100644 --- a/glib/glib/gscanner.c +++ b/glib/glib/gscanner.c @@ -659,7 +659,7 @@ g_scanner_lookup_internal (GScanner *scanner, } /** - * g_scanner_add_symbol + * g_scanner_add_symbol: * @scanner: a #GScanner * @symbol: the symbol to add * @value: the value of the symbol diff --git a/glib/glib/gsequence.c b/glib/glib/gsequence.c index 165fb38..ee3da34 100644 --- a/glib/glib/gsequence.c +++ b/glib/glib/gsequence.c @@ -239,7 +239,7 @@ iter_compare (GSequenceIter *node1, /** * g_sequence_new: - * @data_destroy: a #GDestroyNotify function, or %NULL + * @data_destroy: (allow-none): a #GDestroyNotify function, or %NULL * * Creates a new GSequence. The @data_destroy function, if non-%NULL will * be called on all items when the sequence is destroyed and on items that diff --git a/glib/glib/gstdio.c b/glib/glib/gstdio.c index 1908918..6d763e1 100644 --- a/glib/glib/gstdio.c +++ b/glib/glib/gstdio.c @@ -737,7 +737,7 @@ g_fopen (const gchar *filename, * @filename: a pathname in the GLib file name encoding (UTF-8 on Windows) * @mode: a string describing the mode in which the file should be * opened - * @stream: an existing stream which will be reused, or %NULL + * @stream: (allow-none): an existing stream which will be reused, or %NULL * * A wrapper for the POSIX freopen() function. The freopen() function * opens a file and associates it with an existing stream. diff --git a/glib/glib/gstrfuncs.c b/glib/glib/gstrfuncs.c index 19365b2..777d12e 100644 --- a/glib/glib/gstrfuncs.c +++ b/glib/glib/gstrfuncs.c @@ -1891,7 +1891,7 @@ g_strncasecmp (const gchar *s1, /** * g_strdelimit: * @string: the string to convert - * @delimiters: a string containing the current delimiters, or %NULL + * @delimiters: (allow-none): a string containing the current delimiters, or %NULL * to use the standard delimiters defined in #G_STR_DELIMITERS * @new_delimiter: the new delimiter character * @@ -2441,7 +2441,7 @@ g_strdupv (gchar **str_array) /** * g_strjoinv: - * @separator: a string to insert between each of the strings, or %NULL + * @separator: (allow-none): a string to insert between each of the strings, or %NULL * @str_array: a %NULL-terminated array of strings to join * * Joins a number of strings together to form one long string, with the @@ -2493,7 +2493,7 @@ g_strjoinv (const gchar *separator, /** * g_strjoin: - * @separator: a string to insert between each of the strings, or %NULL + * @separator: (allow-none): a string to insert between each of the strings, or %NULL * @...: a %NULL-terminated list of strings to join * * Joins a number of strings together to form one long string, with the diff --git a/glib/glib/gtestutils.c b/glib/glib/gtestutils.c index e9d7f84..ffdbea3 100644 --- a/glib/glib/gtestutils.c +++ b/glib/glib/gtestutils.c @@ -1412,7 +1412,7 @@ g_test_add_vtable (const char *testpath, return; suite = g_test_get_root(); - segments = g_strsplit (testpath, G_DIR_SEPARATOR_S, -1); + segments = g_strsplit (testpath, "/", -1); for (ui = 0; segments[ui] != NULL; ui++) { const char *seg = segments[ui]; @@ -1471,7 +1471,7 @@ g_test_fail (void) /** * g_test_add_func: - * @testpath: Slash-separated test case path name for the test. + * @testpath: /-separated test case path name for the test. * @test_func: The test function to invoke for this test. * * Create a new test case, similar to g_test_create_case(). However @@ -1503,7 +1503,7 @@ g_test_add_func (const char *testpath, /** * g_test_add_data_func: - * @testpath: Slash-separated test case path name for the test. + * @testpath: /-separated test case path name for the test. * @test_data: Test data argument for the test function. * @test_func: The test function to invoke for this test. * @@ -1954,8 +1954,8 @@ g_assertion_message_error (const char *domain, /** * g_strcmp0: - * @str1: a C string or %NULL - * @str2: another C string or %NULL + * @str1: (allow-none): a C string or %NULL + * @str2: (allow-none): another C string or %NULL * * Compares @str1 and @str2 like strcmp(). Handles %NULL * gracefully by sorting it before non-%NULL strings. @@ -2482,7 +2482,7 @@ g_test_log_buffer_new (void) } /** - * g_test_log_buffer_free + * g_test_log_buffer_free: * * Internal function for gtester to free test log messages, no ABI guarantees provided. */ @@ -2497,7 +2497,7 @@ g_test_log_buffer_free (GTestLogBuffer *tbuffer) } /** - * g_test_log_buffer_push + * g_test_log_buffer_push: * * Internal function for gtester to decode test log messages, no ABI guarantees provided. */ diff --git a/glib/glib/gthread-posix.c b/glib/glib/gthread-posix.c index 9500709..3f74aa4 100644 --- a/glib/glib/gthread-posix.c +++ b/glib/glib/gthread-posix.c @@ -225,7 +225,7 @@ g_mutex_unlock (GMutex *mutex) gint status; if G_UNLIKELY ((status = pthread_mutex_unlock (g_mutex_get_impl (mutex))) != 0) - g_thread_abort (status, "pthread_mutex_lock"); + g_thread_abort (status, "pthread_mutex_unlock"); } /** diff --git a/glib/glib/gunidecomp.c b/glib/glib/gunidecomp.c index 8ba24fd..2ee9894 100644 --- a/glib/glib/gunidecomp.c +++ b/glib/glib/gunidecomp.c @@ -685,7 +685,7 @@ g_unichar_compose (gunichar a, * g_unichar_fully_decompose: * @ch: a Unicode character. * @compat: whether perform canonical or compatibility decomposition - * @result: location to store decomposed result, or %NULL + * @result: (allow-none): location to store decomposed result, or %NULL * @result_len: length of @result * * Computes the canonical or compatibility decomposition of a diff --git a/glib/glib/gurifuncs.h b/glib/glib/gurifuncs.h index 8097806..6e6b739 100644 --- a/glib/glib/gurifuncs.h +++ b/glib/glib/gurifuncs.h @@ -39,7 +39,7 @@ G_BEGIN_DECLS #define G_URI_RESERVED_CHARS_GENERIC_DELIMITERS ":/?#[]@" /** - * G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS + * G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS: * * Subcomponent delimiter characters as defined in RFC 3986. Includes "!$&'()*+,;=". **/ diff --git a/glib/glib/gutf8.c b/glib/glib/gutf8.c index e1e0003..19be759 100644 --- a/glib/glib/gutf8.c +++ b/glib/glib/gutf8.c @@ -696,7 +696,7 @@ g_utf8_get_char_validated (const gchar *p, * @str: a UTF-8 encoded string * @len: the maximum length of @str to use, in bytes. If @len < 0, * then the string is nul-terminated. - * @items_written: location to store the number of characters in the + * @items_written: (allow-none): location to store the number of characters in the * result, or %NULL. * * Convert a string from UTF-8 to a 32-bit fixed width @@ -789,12 +789,12 @@ g_utf8_to_ucs4_fast (const gchar *str, * @str: a UTF-8 encoded string * @len: the maximum length of @str to use, in bytes. If @len < 0, * then the string is nul-terminated. - * @items_read: location to store number of bytes read, or %NULL. + * @items_read: (allow-none): location to store number of bytes read, or %NULL. * If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be * returned in case @str contains a trailing partial * character. If an error occurs then the index of the * invalid input is stored here. - * @items_written: location to store number of characters written or %NULL. + * @items_written: (allow-none): location to store number of characters written or %NULL. * The value here stored does not include the trailing 0 * character. * @error: location to store the error occurring, or %NULL to ignore @@ -873,8 +873,8 @@ g_utf8_to_ucs4 (const gchar *str, * @str: a UCS-4 encoded string * @len: the maximum length (number of characters) of @str to use. * If @len < 0, then the string is nul-terminated. - * @items_read: location to store number of characters read, or %NULL. - * @items_written: location to store number of bytes written or %NULL. + * @items_read: (allow-none): location to store number of characters read, or %NULL. + * @items_written: (allow-none): location to store number of bytes written or %NULL. * The value here stored does not include the trailing 0 * byte. * @error: location to store the error occurring, or %NULL to ignore @@ -945,12 +945,12 @@ g_ucs4_to_utf8 (const gunichar *str, * @str: a UTF-16 encoded string * @len: the maximum length (number of <type>gunichar2</type>) of @str to use. * If @len < 0, then the string is nul-terminated. - * @items_read: location to store number of words read, or %NULL. + * @items_read: (allow-none): location to store number of words read, or %NULL. * If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be * returned in case @str contains a trailing partial * character. If an error occurs then the index of the * invalid input is stored here. - * @items_written: location to store number of bytes written, or %NULL. + * @items_written: (allow-none): location to store number of bytes written, or %NULL. * The value stored here does not include the trailing * 0 byte. * @error: location to store the error occurring, or %NULL to ignore @@ -1100,12 +1100,12 @@ g_utf16_to_utf8 (const gunichar2 *str, * @str: a UTF-16 encoded string * @len: the maximum length (number of <type>gunichar2</type>) of @str to use. * If @len < 0, then the string is nul-terminated. - * @items_read: location to store number of words read, or %NULL. + * @items_read: (allow-none): location to store number of words read, or %NULL. * If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be * returned in case @str contains a trailing partial * character. If an error occurs then the index of the * invalid input is stored here. - * @items_written: location to store number of characters written, or %NULL. + * @items_written: (allow-none): location to store number of characters written, or %NULL. * The value stored here does not include the trailing * 0 character. * @error: location to store the error occurring, or %NULL to ignore @@ -1238,12 +1238,12 @@ g_utf16_to_ucs4 (const gunichar2 *str, * @str: a UTF-8 encoded string * @len: the maximum length (number of bytes) of @str to use. * If @len < 0, then the string is nul-terminated. - * @items_read: location to store number of bytes read, or %NULL. + * @items_read: (allow-none): location to store number of bytes read, or %NULL. * If %NULL, then %G_CONVERT_ERROR_PARTIAL_INPUT will be * returned in case @str contains a trailing partial * character. If an error occurs then the index of the * invalid input is stored here. - * @items_written: location to store number of <type>gunichar2</type> written, + * @items_written: (allow-none): location to store number of <type>gunichar2</type> written, * or %NULL. * The value stored here does not include the trailing 0. * @error: location to store the error occurring, or %NULL to ignore @@ -1355,10 +1355,10 @@ g_utf8_to_utf16 (const gchar *str, * @str: a UCS-4 encoded string * @len: the maximum length (number of characters) of @str to use. * If @len < 0, then the string is nul-terminated. - * @items_read: location to store number of bytes read, or %NULL. + * @items_read: (allow-none): location to store number of bytes read, or %NULL. * If an error occurs then the index of the invalid input * is stored here. - * @items_written: location to store number of <type>gunichar2</type> + * @items_written: (allow-none): location to store number of <type>gunichar2</type> * written, or %NULL. The value stored here does not * include the trailing 0. * @error: location to store the error occurring, or %NULL to ignore diff --git a/glib/glib/gutils.h b/glib/glib/gutils.h index 95114d8..1dd5e56 100644 --- a/glib/glib/gutils.h +++ b/glib/glib/gutils.h @@ -304,7 +304,7 @@ g_bit_storage (gulong number) { #if defined(__GNUC__) && (__GNUC__ >= 4) && defined(__OPTIMIZE__) return G_LIKELY (number) ? - ((GLIB_SIZEOF_LONG * 8U - 1) ^ __builtin_clzl(number)) + 1 : 1; + ((GLIB_SIZEOF_LONG * 8U - 1) ^ (guint) __builtin_clzl(number)) + 1 : 1; #else register guint n_bits = 0; diff --git a/glib/glib/gvariant-parser.c b/glib/glib/gvariant-parser.c index c0dc8da..0d1b093 100644 --- a/glib/glib/gvariant-parser.c +++ b/glib/glib/gvariant-parser.c @@ -2306,11 +2306,11 @@ parse (TokenStream *stream, /** * g_variant_parse: - * @type: a #GVariantType, or %NULL + * @type: (allow-none): a #GVariantType, or %NULL * @text: a string containing a GVariant in text form - * @limit: a pointer to the end of @text, or %NULL - * @endptr: a location to store the end pointer, or %NULL - * @error: a pointer to a %NULL #GError pointer, or %NULL + * @limit: (allow-none): a pointer to the end of @text, or %NULL + * @endptr: (allow-none): a location to store the end pointer, or %NULL + * @error: (allow-none): a pointer to a %NULL #GError pointer, or %NULL * @Returns: a reference to a #GVariant, or %NULL * * Parses a #GVariant from a text representation. diff --git a/glib/glib/gvariant-serialiser.c b/glib/glib/gvariant-serialiser.c index f072511..d4b668b 100644 --- a/glib/glib/gvariant-serialiser.c +++ b/glib/glib/gvariant-serialiser.c @@ -89,7 +89,7 @@ /* < private > * GVariantSerialised: * @type_info: the #GVariantTypeInfo of this value - * @data: the serialised data of this value, or %NULL + * @data: (allow-none): the serialised data of this value, or %NULL * @size: the size of this value * * A structure representing a GVariant in serialised form. This diff --git a/glib/glib/gvariant.c b/glib/glib/gvariant.c index 22341ff..3526f12 100644 --- a/glib/glib/gvariant.c +++ b/glib/glib/gvariant.c @@ -1812,8 +1812,8 @@ g_variant_get_bytestring (GVariant *value) * * The return value must be freed using g_free(). * - * Returns: (transfer full) (array zero-terminated=1 length=length) - * (element-type guint8): a newly allocated string + * Returns: (transfer full) (array zero-terminated=1 length=length) (element-type guint8): + * a newly allocated string * * Since: 2.26 **/ diff --git a/glib/glib/gvarianttype.c b/glib/glib/gvarianttype.c index a242a38..5c27fe0 100644 --- a/glib/glib/gvarianttype.c +++ b/glib/glib/gvarianttype.c @@ -597,7 +597,7 @@ g_variant_type_string_is_valid (const gchar *type_string) /** * g_variant_type_free: - * @type: a #GVariantType, or %NULL + * @type: (allow-none): a #GVariantType, or %NULL * * Frees a #GVariantType that was allocated with * g_variant_type_copy(), g_variant_type_new() or one of the container diff --git a/glib/glib/gvarianttypeinfo.c b/glib/glib/gvarianttypeinfo.c index 0c380ce..7a76d27 100644 --- a/glib/glib/gvarianttypeinfo.c +++ b/glib/glib/gvarianttypeinfo.c @@ -222,8 +222,8 @@ g_variant_type_info_get_type_string (GVariantTypeInfo *info) /* < private > * g_variant_type_info_query: * @info: a #GVariantTypeInfo - * @alignment: the location to store the alignment, or %NULL - * @fixed_size: the location to store the fixed size, or %NULL + * @alignment: (allow-none): the location to store the alignment, or %NULL + * @fixed_size: (allow-none): the location to store the fixed size, or %NULL * * Queries @info to determine the alignment requirements and fixed size * (if any) of the type. @@ -306,8 +306,8 @@ g_variant_type_info_element (GVariantTypeInfo *info) /* < private > * g_variant_type_query_element: * @info: a #GVariantTypeInfo for an array or maybe type - * @alignment: the location to store the alignment, or %NULL - * @fixed_size: the location to store the fixed size, or %NULL + * @alignment: (allow-none): the location to store the alignment, or %NULL + * @fixed_size: (allow-none): the location to store the fixed size, or %NULL * * Returns the alignment requires and fixed size (if any) for the * element type of the array. This call is a convenience wrapper around diff --git a/glib/glib/gversion.h b/glib/glib/gversion.h index 35a7d3e..d0581c2 100644 --- a/glib/glib/gversion.h +++ b/glib/glib/gversion.h @@ -45,28 +45,6 @@ const gchar * glib_check_version (guint required_major, guint required_minor, guint required_micro); -/** - * GLIB_CHECK_VERSION: - * @major: the major version to check for - * @minor: the minor version to check for - * @micro: the micro version to check for - * - * Checks the version of the GLib library that is being compiled - * against. - * - * <example> - * <title>Checking the version of the GLib library</title> - * <programlisting> - * if (!GLIB_CHECK_VERSION (1, 2, 0)) - * g_error ("GLib version 1.2.0 or above is needed"); - * </programlisting> - * </example> - * - * See glib_check_version() for a runtime check. - * - * Returns: %TRUE if the version of the GLib header files - * is the same as or newer than the passed-in version. - */ #define GLIB_CHECK_VERSION(major,minor,micro) \ (GLIB_MAJOR_VERSION > (major) || \ (GLIB_MAJOR_VERSION == (major) && GLIB_MINOR_VERSION > (minor)) || \ diff --git a/glib/glib/gwin32.c b/glib/glib/gwin32.c index e12fa7a..97eccd7 100644 --- a/glib/glib/gwin32.c +++ b/glib/glib/gwin32.c @@ -203,7 +203,7 @@ g_win32_error_message (gint error) /** * g_win32_get_package_installation_directory_of_module: - * @hmodule: The Win32 handle for a DLL loaded into the current process, or %NULL + * @hmodule: (allow-none): The Win32 handle for a DLL loaded into the current process, or %NULL * * This function tries to determine the installation directory of a * software package based on the location of a DLL of the software @@ -322,8 +322,8 @@ get_package_directory_from_module (const gchar *module_name) /** * g_win32_get_package_installation_directory: - * @package: You should pass %NULL for this. - * @dll_name: The name of a DLL that a package provides in UTF-8, or %NULL. + * @package: (allow-none): You should pass %NULL for this. + * @dll_name: (allow-none): The name of a DLL that a package provides in UTF-8, or %NULL. * * Try to determine the installation directory for a software package. * @@ -428,8 +428,8 @@ g_win32_get_package_installation_directory (const gchar *package, /** * g_win32_get_package_installation_subdirectory: - * @package: You should pass %NULL for this. - * @dll_name: The name of a DLL that a package provides, in UTF-8, or %NULL. + * @package: (allow-none): You should pass %NULL for this. + * @dll_name: (allow-none): The name of a DLL that a package provides, in UTF-8, or %NULL. * @subdir: A subdirectory of the package installation directory, also in UTF-8 * * This function is deprecated. Use |