-2005-08-12 Matthias Clasen <mclasen@redhat.com>
+2005-11-09 Behdad Esfahbod <behdad@gnome.org>
- * === Released 2.8.0 ===
+ * glib/guniprop.c: Use bit hacks instead when checking a general
+ category value against multiple values.
- * NEWS: Updates
-
-2005-08-12 Tim-Philipp Müller <tim at centricular dot net>
-
- * gobject/genums.c: (g_flags_get_first_value): Special-case flag
- value of 0. Instead of returning the first random GFlagsValue
- we come across, return the GFlagsValue for 0 if it exists or
- NULL if it does not exist. Never return the GFlagsValue for 0
- if the requested flags value is nonzero.
-
-2005-08-12 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Bump version to 2.8.0
-
-2005-08-11 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c (g_get_any_init): Use "localhost" as fallback for
- g_get_host_name(), not "unknown".
-
-2005-08-10 Stepan Kasal <kasal@ucw.cz>
-
- Fix typos: Invokation --> Invocation (in various places)
-
-2005-08-10 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gfileutils.c (g_build_path_va, g_build_pathname_va):
- Take a va_list*, not a va_list, to avoid compiler warnings
- about uninitialized variables.
-
-2005-08-09 Matthias Clasen <mclasen@redhat.com>
-
- * tests/gobject/Makefile.am (test_programs): Add it here.
-
- * tests/gobject/gvalue-test.c: Beginning of a test suite
- for GValue.
-
- * NEWS: Updates
-
-2005-08-08 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.c (_g_compute_locale_variants): Initialize
- variables to not make gcc nervous.
-
-2005-08-08 Manish Singh <yosh@gimp.org>
-
- * glib/abicheck.sh: remove stray -V option to grep so it actually
- works.
-
-2005-08-08 Matthias Clasen <mclasen@redhat.com>
-
- * tests/convert-test.c: Enable the endianness test.
-
- * glib/gconvert.c: Make the caching of iconv descriptors
- optional.
-
- * configure.in: Add an --enable-iconv-cache option, and
- default to disabling iconv caching on new enough glibc.
- Somebody with access to Solaris systems will need to test
- if opening/closing of iconv descriptors is enough of
- a performance problem to warrant the caching on that
- platform. Note that the caching is causing correctness
- problems in some corner cases, thus turning it off
- is desirable unless it has severe performance implications.
-
- * tests/convert-test.c: Add a test for
- endianness handling.
+ * glib/gutf8.c: Change ISO10646 to Unicode in docs.
-2005-08-08 Sunil Mohan Adapa <sunil@atc.tcs.co.in>
+2005-11-10 Simos Xenitellis <simos@gnome.org>
- * configure.in: Added "te" to ALL_LINGUAS.
+ * configure.in: Added tt (Tatar) to ALL_LINGUAS.
-2005-08-08 Matthias Clasen <mclasen@redhat.com>
+2005-11-05 Tor Lillqvist <tml@novell.com>
- * tests/Makefile.am: Add convert-test here.
+ * glib/giowin32.c (g_io_win32_set_flags): Don't call g_warning().
+ (#320688) Instead set error and return failure.
- * tests/convert-test.c: Add the beginning of a testsuite
- for g_convert() and friends.
+2005-11-07 Matthias Clasen <mclasen@redhat.com>
-2005-08-06 Matthias Clasen <mclasen@redhat.com>
+ * glib/gmain.c (g_main_dispatch): Don't call cb_funcs->unref
+ while holding the context lock. (#320886, Andy Wingo)
- * glib/glib.symbols: Include glib_on_error_halt.
-
- * glib/abicheck.sh: Also check exported variables.
-
-2005-08-05 Manish Singh <yosh@gimp.org>
+2005-11-07 Billy Biggs <vektor@dumbterm.net>
- * tests/refcount/closures.c: remove unused n_threads variable.
+ * tests/refcount/Makefile.am: Add a missing reference to libglib
+ in the LDADD for this test.
-2005-08-05 Matthias Clasen <mclasen@redhat.com>
+2005-11-07 Matthias Clasen <mclasen@redhat.com>
- * configure.in: Bump version
+ * glib/gmem.c (g_allocator_new): We need to set n_preallocs to a
+ nonzero value, otherwise GTK+ 2.8 breaks when compiled against
+ GLib 2.9. (#320755, Luca Ferretti)
- * === Released 2.7.7 ===
-
- * NEWS: Updates
+2005-11-04 Matthias Clasen <mclasen@redhat.com>
-2005-08-04 Matthias Clasen <mclasen@redhat.com>
-
- * glib/glib.symbols:
- * glib/gatomic.[hc]: Always export g_atomic_int_get and
- g_atomic_pointer_get as functions, even if we have macros,
- to avoid changing the ABI depending on configuration.
-
- * glib/gatomic.c: Fix the s390 implementations of
- g_atomic_pointer_compare_and_exchange.
+ * glib/Makefile.am: Apply a patch from Behdad Esfahbod to
+ use a faster lookup table for g_unichar_get_mirror_char().
+ * glib/gmirroringtable.h: The new table.
+ * glib/gunichartables.h: Remove bidi_mirroring_table.
+ * glib/gen-unicode-tables.pl: Don't generate the mirroring
+ table.
+ * glib/glib-mirroring-tab/*: Sources for the program
+ which generated gmirroringtable.h.
-2005-08-04 Tor Lillqvist <tml@novell.com>
-
- * glib/gstdio.h: Move the G_BEGIN_DECLS/G_END_DECLS pair outside
- the #if/#else/#endif block. Otherwise we had G_BEGIN_DECLS without
- matching G_END_DECLS on Unix, and G_END_DECLS without matching
- G_BEGIN_DECLS on Win32.
-
-2005-08-03 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Bump version
-
- * === Released 2.7.6 ===
-
- * NEWS: Updates
+ * glib/glist.c: Avoid some code duplication.
-2005-08-03 Ross Burton <ross@burtonini.com>
+ * glib/gscanner.h: Include gdataset.h. (#320322)
- * docs/reference/glib/tmpl/windows.sgml:
- Add a long description, pointing people at Cygwin for a complete
- Unix library.
+ * glib/gdebug.h: add new GDebugFlag for fatal_criticals
+ * glib/gmessages.c: (_g_debug_init): handle G_DEBUG=fatal_criticals,
+ to help find critical warnings in applications. (#320017,
+ Vincent Untz)
- * glib/gutils.c:
- Document return value of g_get_host_name().
+2005-11-02 Tor Lillqvist <tml@novell.com>
-2005-08-03 Matthias Clasen <mclasen@redhat.com>
+ * glib/glib.symbols: Remove large amount of trailing whitespace
+ from one line. Remove #ifdef G_UNDEFINED from around
+ g_hash_table_new and g_hash_table_new_full symbols, what was the
+ purpose of that? Add the g_slice functions.
- * glib/gatomic.c: Add native atomic operations
- for s390.
-
- * configure.in: ... and use them on s390.
-
-2005-08-03 Ross Burton <ross@burtonini.com>
-
- * glib/gstdio.c:
- Fix DocBook tag typo. (#311966)
-
-2005-08-03 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gstdio.h: Add G_BEGIN_DECLS/G_END_DECLS. (#312424)
-
-2005-08-02 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gconvert.c (g_convert_with_iconv): Don't go in an
- infinite loop if the input text ends in an incomplete multibyte
- character. (#312402, Sebastien Bacher)
-
- * Bump version
-
- * === Released 2.7.5 ===
-
- * NEWS: Updates
+Tue Nov 1 16:24:20 2005 Tim Janik <timj@imendio.com>
-2005-08-02 Matthias Clasen <mclasen@redhat.com>
+ * glib/gmem.[hc]: prepared deprecation of GMemChunk and GAllocator.
+ added g_slice_*() API to allocate and cache small bits of memory.
+ an actuall allocator implementation for g_slice_*() is still pending.
- * glib/gconvert.c (g_convert_with_iconv, g_convert_with_fallback):
- Cleanup converter state after the conversion. Document streaming
- conversion pitfalls. (#311337)
+ * glib/gthread.[hc]: changes from a patch by Matthias Clasen.
+ changed GRealThread list to use in-structure *next; fields instead
+ of GSList, in order for thread iteration to not depenend on g_slice_*()
+ indirectly.
+ _g_thread_mem_private_get():
+ _g_thread_mem_private_set(): added accessors for private memory,
+ needed because the ordinary GPrivate implementation relies on GArray
+ and GSList and therefore indirectly on working g_slice_*() allocations.
-2005-08-02 Tor Lillqvist <tml@novell.com>
-
- * tests/refcount/objects.c
- * tests/refcount/properties.c
- * tests/refcount/signals.c: Use g_usleep() instead of sleep() for
- portability.
-
-Mon Aug 1 23:33:47 2005 Tim Janik <timj@imendio.com>
-
- * tests/refcount/closures.c: test high contention on closure
- reference counts to trigger and catch non-atomic updates.
-
- * tests/refcount/objects.c:
- * tests/refcount/objects2.c:
- * tests/refcount/properties.c:
- * tests/refcount/properties2.c:
- * tests/refcount/signals.c:
- fixed up test and threading fundamentals. variables accessed from all
- threads need to be volatile. context switches are enforced by using
- g_thread_yield(), not g_usleep(1) which may result in busy waits on
- some platforms. for testcode, always consider all warnings and
- critical messages fatal. issue the currently running program on
- stdout. improved progress indicators.
-
- * tests/refcount/properties.c:
- * tests/refcount/objects.c:
- don't overdo the number of testing threads to keep the testing machine
- usable, 2 threads can produce as much contention as 20 if executing the
- same code.
-
- * tests/refcount/signals.c: only start 1 thread per object. GObject
- doesn't provide mutually exclusive object access, but only mutually
- exclusive reference count modification.
-
- * tests/Makefile.am: added closures test.
-
-2005-08-01 Tor Lillqvist <tml@novell.com>
-
- * tests/uri-test.c: Make it pass on Win32.
- (from_uri_tests[]): Take into consideration that on Win32 we don't
- return "localhost" hostnames.
- (safe_strcmp_filename): New function that considers slash and
- backslash equal on Win32.
- (safe_strcmp_hostname): New function that considers "localhost"
- equal NULL on Win32.
- (run_roundtrip_tests): Use safe_strcmp_filename() and
- safe_strcmp_hostname().
-
-Sun Jul 31 01:50:20 2005 Tim Janik <timj@gtk.org>
+ * glib/gthread.[hc]:
+ g_thread_foreach(): new public API function to loop over all existing threads.
* glib/gdataset.c:
- moved G_DATALIST_*_POINTER() macros here, because proper use requires
- the global g_dataset_global mutex to be acquired.
- g_datalist_id_get_data():
- g_datalist_unset_flags():
- g_datalist_set_flags(): properly acquire and release dataset mutex.
+ * glib/gstring.c:
+ * glib/gcache.c:
+ * glib/garray.c:
+ * glib/gqueue.c:
+ * glib/gslist.c:
+ * glib/glist.c:
+ * glib/ghash.c:
+ * glib/gtree.c:
+ * glib/ghook.c:
+ * glib/gmain.c:
+ * glib/gnode.c:
+ removed GAllocator and free list usages and accompanying locks.
+ use g_slice_*() API to allocate and cache small bits of memory.
- * glib/gdatasetprivate.h: implement G_DATALIST_GET_FLAGS() via atomic
- pointer access to account for memory barriers. moved all other macros.
+ * glib/ghook.h: removed GMemChunk field from public API.
-2005-07-26 Matthias Clasen <mclasen@redhat.com>
+ * glib/gslist.h:
+ * glib/glist.h: deprecate allocator API, provide _free1() for consistency.
- * glib/goption.c: Include glibintl.h, not gi18n.h, noticed
- by Dan Winship.
+ * glib/gnode.h: deprecate allocator API.
- * configure.in: Try -mt as compiler flag for threads, needed
- for the HP C compiler on HP-UX. (#163051, Paul Cornett)
+ * glib/gmain.c: reordered GPollRec fields so g_slice_free_chain() can
+ be used for poll rec lists.
- * glib/ghash.c (g_hash_table_foreach): Fix a typo in the
- docs. (#311569, Ross Burton)
+ * glib/grel.c: removed mem chunk usage, and allocated tuples via g_slice_*().
+ g_relation_destroy(): free all tuples from the all_tuples hash table,
+ this effectively maintains the life time track keeping of tuples.
+ g_relation_delete_tuple(): free tuples which are removed from the
+ all_tuples hash table. this fixes a temporary leak that was present
+ in the memchunk code until the destruction of the relation.
-2005-07-21 Matthias Clasen <mclasen@redhat.com>
+2005-10-29 Matthias Clasen <mclasen@redhat.com>
- * configure.in: Bump version
+ * tests/convert-test.c: Add some tests for conversions between
+ UTF-8, UCS-4 and UTF-16.
- * === Released 2.7.4 ===
+ * glib/gutf8.c (g_utf8_to_ucs4, g_utf8_to_utf16): Fix handling
+ of len == -1, noticed by Morten Welinder.
- * NEWS: Updates
+2005-10-27 Erdal Ronahi <erdal.ronahi@gmail.com>
-2005-07-20 Manish Singh <yosh@gimp.org>
+ * configure.in: Added ku (Kurdish) to ALL_LINGUAS
- * tests/refcount/signals.c: use G_CALLBACK for signal connections.
+2005-10-26 Matthias Clasen <mclasen@redhat.com>
-2005-07-20 Matthias Clasen <mclasen@redhat.com>
+ * glib/gutf8.c (g_ucs4_to_utf8): Don't set items_read twice
+ in the error case, and add some documentation. (#319806, Morten
+ Welinder)
- * glib/gthreadpool.c (g_thread_pool_free): Don't get
- stuck in here if immediate is TRUE. (#310954,
- Hong Jen Yee)
+2005-10-19 Manish Singh <yosh@gimp.org>
- * tests/threadpool-test.c (main): Test immediate == TRUE.
+ * configure.in: Use AC_CHECK_FUNCS for _NSGetEnviron, to get the
+ config.h symbol automatically. Fixes bug #313731.
-2005-07-20 Tor Lillqvist <tml@novell.com>
+2005-10-19 Tor Lillqvist <tml@novell.com>
- * glib/gutils.h (g_win32_get_system_data_dirs): Make this an
- inline function. Define it only if G_CAN_INLINE and not
- C++. (#173098)
+ * glib/gwin32.c (g_win32_get_package_installation_directory):
+ Return a g_strdup()ed copy of the value stored in the hash table,
+ so that it can be g_free()d without leaving a dangling pointer in
+ the hash table. (#319232)
-2005-07-19 Matthias Clasen <mclasen@redhat.com>
+2005-10-06 Matthias Clasen <mclasen@redhat.com>
- * glib/gstring.c (g_string_chunk_insert_len): Avoid
- an unnecessary strlen if len is -1. (#169692,
- Benoit Dejean)
+ * glib/gunicollate.c (g_utf8_collate_key_for_filename): Handle
+ all-zero sequences correctly. (#317930, Sebastien Bacher)
- * glib/gatomic.c (g_atomic_pointer_compare_and_exchange):
- Fix g_atomic_pointer_compare_and_exchange on sparc64.
- (#167572, Gert Doering)
+2005-10-05 Matthias Clasen <mclasen@redhat.com>
-2005-07-15 Matthias Clasen <mclasen@redhat.com>
+ * glib/gmarkup.c (g_markup_escape_text): Doc addition
- * configure.in: Bump version
+ * Makefile.am: Add Collation tests.
- * === Released 2.7.3 ===
-
-2005-07-15 Matthias Clasen <mclasen@redhat.com>
+ * tests/collate/*: Inputs and expected outputs for collation tests.
- * tests/Makefile.am (SUBDIRS): Add tests/refcount
+ * tests/run-collate-tests.sh: Script to run collation tests.
- * configure.in: Add tests/refcount
+ * tests/unicode-collate.c (main): Rework slightly to make
+ it usable in unit tests. Also test g_utf8_collate_key_for_filename().
- * tests/refcount/properties.c: Test property changes
- from multiple threads.
+2005-10-01 Behdad Esfahbod <behdad@gnome.org>
- * tests/refcount/signals.c: Test signal emission from
- multiple threads.
+ * docs/reference/glib/tmpl/unicode.sgml:
+ * glib/gen-unicode-tables.pl:
+ * glib/gunibreak.h:
+ * glib/gunichartables.h:
+ * glib/gunicode.h:
+ * tests/casefold.txt:
+ * tests/casemap.txt: Updated to Unicode 4.1. There are five new
+ GUnicodeBreakType types. That may break some applications, like
+ Pango <= 1.10.
- * tests/refcount/objects.c: Test refcounting from
- multiple threads.
+2005-09-26 Matthias Clasen <mclasen@redhat.com>
- * tests/refcount/objects2.c:
- * tests/refcount/properties2.c: Tests to measure the
- overhead of threadsafe refcounting.
-
- * glib/giochannel.c (g_io_channel_ref, g_io_channel_unref):
- Use atomic operations to make refcounting
- threadsafe. (#166020, Wim Taymans)
+ * glib/gstrfuncs.c (g_ascii_strtoull): Add details to the
+ docs. (#314393, Matthew F. Barnes)
- * NEWS: Updates
-
-2005-07-14 Matthias Clasen <mclasen@redhat.com>
-
- * tests/spawn-test.c:
- * tests/uri-test.c:
- * tests/thread-test.c:
- * tests/queue-test.c:
- * tests/mainloop-test.c:
- * tests/iochannel-test.c:
- * tests/gio-test.c:
- * tests/child-test.c: Make the tests silent on success.
-
-2005-07-13 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gfileutils.c (g_mkdir_with_parents): Fix a
- typo. (#310243, Richard Laager)
-
- * glib/goption.c (g_option_group_add_entries): Warn if a
- short name is not acceptable.
-
-2005-07-12 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.h (G_OPTION_FLAG_NOALIAS):
- * glib/goption.c: Add and implement a new flag
- to turn off the automatic <groupname>- prefixing
- for conflict resolution of long option names. (#171840,
- Adam McLaurin)
-
- All optional callback arguments (#308886, Pawel
- Sliwowski)
-
- * glib/goption.h (G_OPTION_FLAG_OPTIONAL_ARG):
- * glib/goption.c: Add and implement a new flag
- to indicate that a callback *optionally* takes another
- argument.
+ * glib/glib.symbols:
+ * glib/gprintf.h: Remove g_snprintf() and g_vsnprintf(), since
+ they are already declared in glib.h. This doesn't break documented
+ use of gprintf.h, but should probably be pointed out in the
+ release notes for 2.10. (#314232, Behdad Esfahbod)
- * tests/option-test.c: Add tests for optional arguments.
+Tue Sep 20 13:16:04 2005 Tim Janik <timj@imendio.com>
-2005-07-12 Matthias Clasen <mclasen@redhat.com>
+ * glib/gpattern.c (g_pattern_ph_match): applied significant recursion
+ complexity optimization, based on a patch from Matthias Clasen.
- * glib/gthread.c (g_static_rec_mutex_lock_full): Don't lock
- if depth is zero. (#310148, Wim Taymans)
+ * tests/patterntest.c: more tests, mostly from matthias.
-2005-07-10 Matthias Clasen <mclasen@redhat.com>
+2005-09-20 Matthias Clasen <mclasen@redhat.com>
- * glib/gutils.c (g_listenv): Ignore anomalous environment
- entries which are not of the form variable=value. (#309859,
- Morten Welinder)
+ * glib/gqueue.c (g_queue_insert_sorted): Correct the docs.
+ (#316703, Mark Drago)
-2005-07-09 Tor Lillqvist <tml@novell.com>
+Mon Sep 19 17:23:23 2005 Tim Janik <timj@imendio.com>
- * glib/giowin32.c: Totally rewritten socket channel
- implementation. See discussion in bug #147392.
+ * glib/gpattern.c: applied a patch from matthias which checks on the
+ upper bound of GPatternSpec length to optimize matches.
+ cosmetic fixups.
- * configure.in: Don't use autoconf variables for the resource
- object files on Win32 any longer. Instead handle that in the
- Makefile.am files. Check for windres.
+ * tests/patterntest.c: added more match cases.
- * glibconfig.h.win32.in: Minor tuning to match the
- configure-produced glibconfig.h closely.
+2005-09-16 Tor Lillqvist <tml@novell.com>
- * glib/Makefile.am: Don't use the scripts in build/win32 to
- compile glib.rc into a resource object file. (This means we lose
- the build number increment magic, but I doubt it was that useful
- anyway.) Instead use windres directly. To pass the normal .o file
- produced by windres through libtool, which wants .lo files, pass
- it directly to the linker using a -Wl option.
+ * glib/gstrfuncs.c (g_ascii_strcasecmp, g_ascii_strncasecmp): Add
+ warning to doc comment that these functions should not be used on
+ encodings like CP932.
- * glib/glib.rc.in: Thus replace BUILDNUMBER with 0.
+2005-09-14 Matthias Clasen <mclasen@redhat.com>
-2005-07-08 Matthias Clasen <mclasen@redhat.com>
+ * tests/keyfile-test.c: Add a test for grup names of length 1.
- * configure.in: Bump version
+ * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
+ of length 1. (#316309)
- * === Released 2.7.2 ===
+2005-09-12 Matthias Clasen <mclasen@redhat.com>
- * NEWS: Updates
+ * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
-2005-07-07 Matthias Clasen <mclasen@redhat.com>
+2005-09-11 Sebastian Wilhelmi <seppi@seppi.de>
- * configure.in: Make the size_t size detection work on AIX.
- (#309725)
+ * tests/refcount/Makefile.am (INCLUDES): Link the the refcount
+ tests to the system thread library $(G_THREAD_LIBS). Fixes #313744
+ and #314217.
-2005-07-06 Matthias Clasen <mclasen@redhat.com>
+2005-09-11 Kjartan Maraas <kmaraas@gnome.org>
- * configure.in: Require a newer gtk-doc.
+ * glib/gmain.c: (g_child_watch_prepare), (g_child_watch_check),
+ (child_watch_helper_thread): Remove some dead code. Closes
+ bug #315278.
-2005-07-01 Hans Breuer <hans@breuer.org>
+2005-09-07 Tor Lillqvist <tml@novell.com>
- * glib/gmessages.c : include <process.h> for getpid()
- * glib/gmappedfile.c : include <io.h> for close() etc.
- * glib/makefile.msc.in : add gmappedfile.obj
-
-2005-07-01 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c (g_key_file_get_key_comment):
- (g_key_file_get_top_comment): Don't reverse the order of multiline
- comments.
- (g_key_file_get_group_comment): Actually get the group comment.
-
- * tests/keyfile-test.c (test_comments): Test that comments are
- handled properly. (#309263, Mikael Magnusson)
-
-2005-06-30 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Bump version
-
- * === Released 2.7.1 ===
-
-2005-06-30 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gstring.c (g_str_hash): Fix portability issues.
- (#307064, Morten Welinder)
-
- Apply a patch which may make GLib work on BeOS again.
- (#309157, Kian Duffy)
-
- * glib/gmain.c: Update the BeOS includes.
-
- * glib/gstdio.c:
- * glib/gutils.c (g_find_program_in_path):
- * glib/gbacktrace.c (g_on_error_stack_trace): Use the UNIX
- implementation on BeOS, as well.
-
- * configure.in: Don't put glib 1.0 into G_MODULE_LIBS, even
- on BeOS.
-
- * NEWS: Updates
-
-2005-06-26 Tor Lillqvist <tml@novell.com>
-
- * glib/Makefile.am: libtool installs/uninstalls the import
- library, no need to do it ourselves. Do still install/uninstall
- the .def file, though.
-
- * glib/gmappedfile.c: Add Win32 implementation.
- (g_mapped_file_free): Don't mention writable shared mappings in
- the doc comment. Free the GMappedFile struct.
-
- * tests/mapping-test.c (main): No kill() or SIGUSR1 on Win32, use
- a flag file instead to stop the child. Use g_usleep() instead of
- sleep().
-
-2005-06-24 Matthias Clasen <mclasen@redhat.com>
-
- Add an mmap() wrapper called GMappedFile. (#148218,
- David Schleef, Behdad Esfahbod)
-
- * glib/gmappedfile.[hc]: New files.
-
- * configure.in: Check for mmap.
-
- * glib/Makefile.am: Add new files.
+ * glib/Makefile.am: Create also a console version of the
+ gspawn-win32-helper program, gspawn-win32-helper-console.exe.
+ It's otherwise identical to gspawn-win32-helper.exe, except marked
+ as a console application (linked without the -mwindows option).
- * glib/glib.symbols: Add new functions.
-
- * glib/glib.h: Include gmappedfile.h
+ * glib/gspawn-win32.c (do_spawn_directly, do_spawn_with_pipes):
+ Drop the dont_wait parameter. Its truth value correlated 100% with
+ the NULLness of the exit_status parameter anyway, so it's enough
+ to check whether exit_status is NULL. Invert the sense of the
+ dont_return_handle parameter and rename it to do_return_handle, to
+ make the code easier to read by avoiding double negations.
- * tests/mapping-test.c: Tests for GMappedFile.
+ (g_spawn_sync_utf8, g_spawn_async_with_pipes_utf8): Modify calls
+ to do_spawn_with_pipes() accordingly.
- * tests/Makefile.am: Add new file.
+ (do_spawn_with_pipes): If we have a console, use the console
+ version of the helper program, otherwise use the GUI one. This
+ avoids extra console windows opening up in some situations. (In
+ case a console application uses the GUI gspawn-win32-helper.exe to
+ spawn another console application we would get a separate console
+ for the spawned console application).
- * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Add --enable-man.
+ * glib-zip.in: Distribute also gspawn-win32-helper-console.exe.
-2005-06-24 Tor Lillqvist <tml@novell.com>
+2005-09-05 Matthias Clasen <mclasen@redhat.com>
- * glib/Makefile.am (install-libtool-import-lib): Current GNU tools
- do understand the PRIVATE keyword.
+ * glib/gmappedfile.c (g_mapped_file_new): Report an error
+ if the file is too large. (#315275, Kjartan Maraas)
- * glib/gfileutils.c (g_mkdir_with_parents): Return error with
- EINVAL also for empty pathnames.
- (g_build_pathname_va): Fix typo.
-
-Thu Jun 23 15:52:08 2005 Manish Singh <yosh@gimp.org>
-
- * glib/gfileutils.c: g_build_filename_va is only use in the G_OS_WIN32
- case, so compile it conditionally.
-
-2005-06-23 Matthias Clasen <mclasen@redhat.com>
-
- * tests/keyfile-test.c (test_group_remove): Don't leak
- memory here.
-
- * glib/gkeyfile.c (g_key_file_load_from_data_dirs): Don't
- leak output_path. (#308546, Kjartan Maraas)
-
- * glib/glib.symbols:
- * glib/gfileutils.h:
- * glib/gfileutils.c (g_build_pathv, g_build_filenamev):
- Variants of g_build_path() and g_build_filename()
- which take a string array instead of varargs.
- (#149092, Todd A. Fisher)
-
- * tests/strfunc-test.c: Add tests for g_build_pathv()
- and g_build_filenamev().
-
-2005-06-22 Tor Lillqvist <tml@novell.com>
-
- * glib/gfileutils.c
- * glib/gfileutils.h
- * glib/glib.symbols
- * tests/testglib.c: Rename g_makepath() to g_mkdir_with_parents().
-
-2005-06-22 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.c (parse_short_option, parse_long_option):
- Pass the option name also in the NO_ARG case. (#308602,
- Masatake YAMATO)
- (parse_arg): Properly store changes for arrays. (#308528,
- Roger Leigh)
-
-2005-06-22 Tor Lillqvist <tml@novell.com>
-
- * glib/gfileutils.c (g_makepath): New function. Creates a
- directory including intermediate parent directories as
- needed. (#60509)
-
- * glib/gfileutils.h: Declare it.
-
- * glib/gutils.c (g_get_host_name): New function. Returns the
- machine's name, or one of its names. Document that it is
- best-effort only, and not guaranteed to be unique or anything.
- (g_get_any_init): Get the host name here. On Unix use
- gethostname(), on Windows use GetComputerName(). (#5200)
-
- * glib/gutils.h: Declare it.
-
- * glib/glib.symbols: Add new functions.
-
- * tests/testglib.c: Test g_makepath() and g_get_host_name().
+ * glib/gkeyfile.c (g_key_file_load_from_fd): The return value
+ of read() is signed. (#315273, Kjartan Maraas)
-2005-06-18 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.h:
- * glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
- G_OPTION_FLAG_FILENAME to allow greater control of
- G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)
-
- * tests/option-test.c: test callback args
-
-2005-06-14 Theppitak Karoonboonyanan <thep@linux.thai.net>
-
- * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
-
-2005-06-10 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Bump version
+2005-08-31 Tor Lillqvist <tml@novell.com>
- * === Released 2.7.0 ===
+ * glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
+ the EXE and each DLL have their own atexit function chains.
- * NEWS: Updates
-
-2005-06-09 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Better
- error checking. (#306389, Morten Welinder)
-
- * glib/goption.c (parse_int): Set errno to 0 before calling
- strtol. (#306388, Morten Welinder)
-
-2005-06-09 Tor Lillqvist <tml@novell.com>
-
- * glib/gstdio.h
- * glib/gstdio.c
- * glib/glib.symbols: Add a chdir() wrapper, too.
-
- * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
+ #define g_atexit as atexit instead. This means it has a
+ better chance of doing what the caller wants. For instance,
+ gtkhtml calls g_atexit() registering a function in gtkhtml
+ itself. This caused a crash when g_atexit() was implemented as a
+ function in the GLib DLL. The gtkhtml DLL was already unloaded by
+ the time the GLib DLL got unloaded.
- * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
- comment.
+ * glib/gutils.c: #undef the #define mentioned above, to also get a
+ real g_atexit() into the DLL for backward compatibility. Document
+ the Windows behaviour of g_atexit(), and document the varying ways
+ atexit() can behave in the context of dynamically loaded modules
+ on Unix.
-2005-06-08 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c (get_windows_directory_root): New helper function
- on Win32, returns the root of the drive (or possibly share) where
- the Windows directory is. (In the case of Terminal Server sessions
- the Windows directory is a per-user folder.)
- (g_get_any_init): Use get_windows_directory_root() as last resort
- for both temp directory and home directory. g_get_home_dir() now
- never returns NULL on Win32. Don't look at HOMEDRIVE and
- HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
- drive root should be enough.
-
-2005-06-08 Matthias Clasen <mclasen@redhat.com>
+2005-08-31 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
- * glib/gunicode.h:
- * glib/gunicollate.c (g_utf8_collate_key_for_filename):
- New function to calculate collation keys which are more
- suitable for sorting filenames. (#172690, Ole Laursen)
-
-Fri May 27 17:18:00 2005 Manish Singh <yosh@gimp.org>
-
- * glib/goption.c (parse_short_option): initialize option_name
- before using it.
-
-2005-05-27 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.c (parse_short_option, parse_long_option):
- Return an error if an option is missing its argument. (#305576,
- Björn Lindqvist)
-
- * tests/option-test.c (missing_arg_test): Add a testcase.
-
-Wed May 25 15:33:51 2005 Manish Singh <yosh@gimp.org>
-
- * glib/goption.c (print_help): rest_description should be const.
-
-2005-05-25 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gunidecomp.c (combine_hangul): Don't eat Hangul
- when normalizing. (#301742, reported by Christian Biere,
- patch by Noah Levitt)
-
-2005-05-24 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.c (print_help): If the remaining argument
- has an arg_description, display the synopsis as
- PROGNAME [OPTION...] REST (#305346, Noah Levitt)
-
-2005-05-20 Federico Mena Quintero <federico@ximian.com>
-
- Merged from glib-2-6:
-
- * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
- of exit_status(); it's not the return code from the child, but
- rather the waitpid() status.
-
-2005-05-18 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gunidecomp.c: Correct the end of the Hangul
- Syllables range, from 0xd7af to 0xd7a3, in several
- places. (#301984, Changwoo Ryu)
+ * glib/gquark.h:
+ * glib/gdataset.c: Add string interning functions.
-2005-05-17 Matthias Clasen <mclasen@redhat.com>
+2005-08-28 Matthias Clasen <mclasen@redhat.com>
- * tests/tree-test.c (main): Check the return values of
- g_tree_remove().
-
- * glib/gtree.c (g_tree_remove, g_tree_steal): Return
- a boolean indicating wether the key was found. (#302545,
- Matthew F. Barnes)
-
-2005-05-06 Brian Cameron <brian.cameron@sun.com>
-
- * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
- Makefile.am: Added gmodule-no-export-2.0-uninstalled.pc.in
- to allow building of other libraries like pango when
- glib is uninstalled.
-
-2005-05-06 Matthias Clasen <mclasen@redhat.com>
-
- * tests/option-test.c: Add a testcase.
+ * glib/giochannel.c: Unify some near-duplicate strings. (#314654,
+ Clytie Siddall)
- * glib/goption.c (g_option_context_parse): Treat '-'
- on its own as a non-option argument. (#168008, Tim Musson,
- Thomas Leonard and others)
-
-2005-05-05 Owen Taylor <otaylor@redhat.com>
-
- * glib/gdataset.[ch] glib/gdatasetprivate.h: Add
- g_datalist_set/unset_flags(), g_datalist_get_flags() functions
- to squeeze some bits into a GDataSet... this is needed for
- efficient implementation of toggle references in GObject.
-
- * tests/gobject/references.c tests/gobject/Makefile.am:
- Add a test case for weak and toggle references.
-
- * glib/gfileutils.[ch]: Rename g_file_replace() back
- to g_file_set_contents().
-
- * glib/glib.symbols: Update.
-
-2005-05-02 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gstring.c (g_str_equal, g_str_hash): Move docs
- inline.
-
-2005-05-01 Matthias Clasen <mclasen@redhat.com>
-
- * glib/ghash.h: Rename some parameters to make gtk-doc
- happy.
-
- * glib/gutils.c:
- * glib/gwin32.c:
- * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
-
-2005-04-29 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
-
-2005-04-28 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
- when meeting a trailing \\. (#301373, Benjamin Otte)
-
-2005-04-27 Tor Lillqvist <tml@novell.com>
-
- * glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
- call g_set_error() unless the GError pointer is non-NULL. This
- avoids infinite recursion problems in certain rare situations on
- Windows, when g_locale_from_utf8() is called from
- _glib_get_locale_dir() after the change below. It's the
- _glib_gettext() calls to translate error messages that are
- parameters to g_set_error() that cause the recursion, not
- g_set_error() itself.
-
- * glib/gwin32.c (g_win32_locale_filename_from_utf8): New
- function. Converts a filename to the system codepage, and if a
- straight conversion isn't possible (because the filename contains
- characters not in the system codepage), try looking up the
- filename (which should refer to an existing file for this to
- succeed) with short (8.3) pathname components.
-
- * glib/gutils.c (_glib_get_locale_dir): No need to cache the
- result, this function is normally called only once. Return the
- path to the locale directory in system codepage, not UTF-8. The
- path is passed to bindtextdomain(), which doesn't use UTF-8 file
- names. Use g_win32_locale_filename_from_utf8(). (#301772)
-
- Don't do run-time lookup of message catalog directory on
- Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
- we use paths fixed at configure time.
-
-2005-04-19 Tor Lillqvist <tml@novell.com>
+2005-08-26 Matthias Clasen <mclasen@redhat.com>
- * glib/gutils.h: Minor comment improvement.
+ * configure.in: Bump version to 2.9.0
-2005-04-18 Tor Lillqvist <tml@novell.com>
+2005-08-25 Tor Lillqvist <tml@novell.com>
- * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
- save_errno was missing in one place.
-
-Sat Apr 16 20:15:44 2005 Soeren Sandmann <sandmann@redhat.com>
-
- * glib/gfileutils.c (g_file_replace): Save the errno in various
- places
-
- * glib/gfileutils.c (set_umask_permissions): Fork a child and do
- chmod() to the umask() permissions there.
-
-2005-04-10 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
- both definitions. (#300071, Tommi Komulainen)
-
-2005-04-09 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
-
-2005-04-08 Tor Lillqvist <tml@novell.com>
-
- * glib/gstdio.h
- * glib/gstdio.c
- * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
- access(), chmod() and creat(). (#169623, #171285)
-
-2005-04-08 Tor Lillqvist <tml@novell.com>
-
- Improve g_get_system_data_dirs() on Windows. A library that calls
- g_get_system_data_dirs() might be installed in a different
- top-level prefix than GLib or the application being run.
-
- * glib/gutils.h (g_win32_get_system_data_dirs): New static
- function defined in this header. Calls
- g_win32_get_system_data_dirs_for_module() passing the address of
- itself as parameter. g_get_system_data_dirs() is #defined as this
- function.
-
- * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
- function. If the address parameter is non-NULL, the corresponding
- module's installation location is used for one of the returned
- path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
- glib top-level and application top-level folders.
- (g_get_system_data_dirs): Now just for backward compatibility on
- Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
-
- * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
-
- * glib/gutils.c (read_aliases): Not used on Windows.
- (unalias_lang): Don't do anything on Windows, there is no
- /usr/share/locale/locale.alias file..
+ Make also the g_spawn*() functions take parameters in the GLib
+ file name encoding, i.e. UTF-8, on Windows. Has no impact on Unix
+ API or ABI. Like the other GLib API that was earlier changed to
+ use UTF-8 on Windows, the names of the functions that take UTF-8
+ have _utf8 suffixes added by using preprocessor macros in the
+ header file. The old names are kept for functions with the old
+ behaviour, taking parameters in the system codepage, for DLL ABI
+ stability.
-Thu Apr 7 22:51:15 2005 <yosh@gimp.org>
-
- * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
- and exe_top_share_dir only in G_OS_WIN32.
-
-2005-04-08 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c (g_get_system_data_dirs): After investigating more
- closely the actual use cases of this function, I understand better
- what it needs to do on Windows. In addition to the Windows
- COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
- "share" subfolders of GLib's installation location and the
- application .exe's installation location, hoping that either
- matches what the function's caller is looking for.
-
- * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
- if available, and store dll name in UTF-8.
-
-2005-04-05 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gfileutils.c (get_contents_stdio): Avoid memory
- leaks in borderline cases. (#172612, Morten Welinder)
-
-2005-04-04 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gconvert.c: Clarify docs in some places. (#172404,
- Morten Welinder)
-
-2005-04-03 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is
- defined. This was the pre-2.6 behaviour, and without it,
- G_IMPLEMENT_INLINES cannot be used in multiple .c files
- at all. (#165852, Dave Benson)
-
-2005-04-01 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gmain.c (g_child_watch_source_new): Add a note regarding
- waitpid(-1).
- (g_child_watch_source_init_multi_threaded):
- (g_child_watch_source_init_single): Don't use SA_RESTART,
- since it causes problems on at least one platform. (#168352)
-
-2005-03-30 Steve Murphy <murf@e-tools.com>
-
- * configure.in: Added "rw" to ALL_LINGUAS.
-
-2005-03-30 Sven Neumann <sven@gimp.org>
-
- * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
- that no bytes are read from the file and allocate an empty string.
-
-2005-03-30 Tor Lillqvist <tml@novell.com>
-
- * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
- file descriptors open to devices are readable, since we can't
- know. fstat() doesn't give any useful information. (#145326)
-
-2005-03-29 Tor Lillqvist <tml@novell.com>
-
- * glib/gmain.c (g_poll): [Win32] If the event fired, assign
- f->revents=f->events. We can't know whether the upper layer using
- the event actually is readable, writeable or what, so say that all
- the conditions hold. Remove the ResetEvent() call that has been
- ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
- #endif pair of lines, that code is not optional.
- (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
- instead of time() and GetTickCount(). Much simpler.
-
-2005-03-28 Matthias Clasen <mclasen@redhat.com>
-
- * tests/date-test.c:
- * tests/testgdate.c: Add tests for
- g_date_get_iso8601_week_of_year().
-
- * glib/gdate.c (g_date_get_iso8601_week_of_year):
- Fix the calculation. (#169858, Jon-Kare Hellan)
-
-2005-03-27 Tor Lillqvist <tml@novell.com>
-
- * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
- after all, and in fact necessary with HEAD libtool.
-
-2005-03-23 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c (g_getenv): [Win32] Fix corner case bug when
- environment variable value is exactly one character.
-
-2005-03-21 Matthias Clasen <mclasen@redhat.com>
-
- * glib/glib.symbols: Add g_try_malloc0
-
- * glib/gmem.h: Add g_try_new, g_try_new0, g_try_renew and
- g_try_malloc0. (#169611, Stefan Kost)
-
- * glib/gmem.c: Implement g_try_malloc0.
-
-2005-03-20 Tor Lillqvist <tml@novell.com>
-
- * glib/gspawn-win32.c (do_spawn_with_pipes): Close the process
- handle if the caller doesn't want it also in the case without a
- helper process.
- (g_spawn_sync): Don't ask for a child pid which we don't need.
-
- * glib/gtimer.c: On Win32, use GetSystemTimeAsFileTime() instead
- of GetTickCount(). (#159507)
-
- * glib/gmessages.c (g_log_default_handler)
- * glib/gutils.c (g_get_prgname): Move the Win32 code that asks the
- program name from the system to g_get_prgname(). Do output the pid
- also on Win32 (useful in case there are several instances of the
- same program running).
-
- * tests/testglib.c (main): Print more detailled output from the
- timer tests. Don't print home directory twice. Test
- g_win32_error_message().
-
- * tests/spawn-test.c (run_tests): On Win32, run netstat instead of
- ipconfig. On Windows XP collecting output from ipconfig doesn't
- seem to work for some reason.
-
-2005-03-18 Hans Breuer <hans@breuer.org>
-
- * glib/makefile.msc.in : handle galiasdef.c (although completely
- useless for msvc build)
-
- * glib/gbacktrace.c glib/gmessage.c : need at least _WIN_VER 0x0401
- for IsDebuggerPresent()
-
-2005-03-17 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c: Update the documentation, reflecting the
- fact that the special case for !group_name --> start_group
- got removed. (#170566, Tim-Philipp Müller)
-
-2005-03-15 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.c (g_option_context_set_main_group): Warn
- if there already is a main group. (#170445, Jeff Franks)
-
-Sun Mar 13 22:01:17 2005 Manish Singh <yosh@gimp.org>
-
- * tests/array-test.c: delete a bunch of dead code.
-
-Sun Mar 13 21:28:47 2005 Manish Singh <yosh@gimp.org>
-
- * glib/gdataset.c: remove spurious IA prefix from g_quark_try_string.
-
-2005-03-13 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gatomic.c:
- * glib/gcache.c: Small fixes to the previous commit.
-
-2005-03-13 Matthias Clasen <mclasen@redhat.com>
-
- Make PLT-reduction work with gcc4, and don't include
- everything in galias.h:
+ * glib/gspawn.h: On Win32 add the suffix _utf8 to the names of the
+ g_spawn*() functions.
- * glib/glib.symbols: Group symbols by header and source file.
- * glib/makegalias.pl: Protect definitions by the same
- preprocessor symbols used to guard the headers. Move
- the alias declarations to a separate file which is
- produced when calling makegalias.pl -def
- * glib/Makefile.am (galiasdef.c): Add a rule to generate this
- file.
- * glib/*.c: Include galias.h after the other GLib headers,
- include galiasdef.c at the bottom.
-
- * glib/glib.symbols: Add g_listenv and g_file_replace.
-
-Fri Mar 11 23:51:12 2005 Soeren Sandmann <sandmann@redhat.com>
-
- * glib/gfileutils.c (write_to_temp_file): Don't try and generate
- a dotfile from the name -- it doesn't work with absolute
- paths. Also make documentation indicate that symlinks will be
- overwritten. Both pointed out by Alexis S. L. Carvalho.
-
-2005-03-11 Matthias Clasen <mclasen@redhat.com>
-
- * m4macros/glib-gettext.m4: Avoid stupid compiler complaints
- about precision loss.
-
-2005-03-10 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gdate.c: Remove a lot of pointless g_return_if_fail()
- checks. (#169859, Morten Welinder)
+ * glib/gspawn-win32.c: Use wide-char API on NT-based
+ Windows. Convert parameters from UTF-8 to wide chars (NT) or
+ system codepage (Win9x) and call the C library _wspawn*() or
+ spawn*() functions respectvely. Add DLL ABI stability versions
+ that take parameters in the system codepage.
-2005-03-10 Sven Neumann <sven@gimp.org>
+ * glib/gspawn-win32-helper.c: On NT-based Windows use the
+ wide-char versions of argv and envp, and use wide-char API to
+ change directory and spawn the program to run. Remove the verbose
+ debugging output, it was too complex to modify for the wide-char
+ features. (Just add temporary debugging printouts if needed, no
+ need to have them permanently in the source.)
- * tests/file-test.c: include <gstdio.h>.
+ * glib/gspawn.c: Corresponding documentation updates.
-2005-03-10 Sven Neumann <sven@gimp.org>
+ * glib/glib.symbols: Corresponding changes: Mark the ABI stability
+ symbols as PRIVATE, add the new _utf8-suffixed ones.
- * glib/gfileutils.c (get_contents_stdio): delay memory allocation
- until after the first read. Saves a bunch of reallocs. Also
- increased the buffer size to 4096 bytes. (bug #165954)
+2005-08-24 Stepan Kasal <kasal@ucw.cz>
- * tests/file-test.c (test_get_contents): added a (very basic) test
- for g_file_get_contents().
+ * glib/gtypes.h (G_MININT64): Cast the constant to gint64; it is
+ guint64 otherwise and that can produce warnings about comparison
+ between signed and unsigned.
-Wed Mar 9 19:06:45 2005 Manish Singh <yosh@gimp.org>
-
- * glib/glib.symbols: Add g_file_replace.
-
-2005-03-09 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Bump version
-
-2005-03-09 Sven Neumann <sven@gimp.org>
-
- * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
- conversions.
-
-2005-03-09 Tor Lillqvist <tml@novell.com>
-
- * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
- g_get_user_cache_dir, g_get_system_data_dirs,
- g_get_system_config_dirs): [Win32] Don't leak return value from
- get_special_folder(). (#169348, Daniel Atallah) Guard against
- g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
-
-Tue Mar 8 15:46:54 2005 Søren Sandmann <sandmann@redhat.com>
-
- * glib/gfileutils.c (g_file_replace): New API. A function to
- atomically create a file.
-
-2005-03-08 Matthias Clasen <mclasen@redhat.com>
-
- * glib/glib.symbols: Add the new attributes here too.
-
- * glib/gmacros.h: Define G_GNUC_NULL_TERMINATED.
- (#164706, Marc Meissner)
-
- * glib/gstrfuncs.h:
- * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
- appropriate.
-
- * glib/goption.c (parse_int): Fix an error message.
- (#168751, Hazael Maldonado Torres)
-
-2005-03-07 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
- (#168474, Fabricio Barros Cabral)
-
-2005-03-07 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.c (g_find_program_in_path): Mark the last
- paragraph of the docs as Windows-specific. (#169433)
-
-2005-03-06 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
- to set_error.
- (g_markup_parse_context_end_parse): Fix an
- error message, noticed by Tim Janik.
-
-2005-02-24 Tor Lillqvist <tml@novell.com>
-
- * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
- glib.def. (#167496, J. Ali Harlow)
-
- * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
- Daniel Atallah)
-
-2005-02-23 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD
- on non-linux platforms. (#168177, Michael Banck)
-
- * tests/keyfile-test.c (test_locale_string): Set LANGUAGE
- instead of LC_ALL to shield against LANGUAGE being set in
- the environment. (#168311, Suren A. Chilingaryan)
-
-Tue Feb 22 22:03:38 2005 Manish Singh <yosh@gimp.org>
-
- * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
- aliases for their respective C library functions, instead of
- using the function wrappers. This avoids library users having to
- care about matching large file support with whatever glib has been
- built with. Fixes bug #167942.
-
- * glib/gstdio.c
- * glib/abicheck.sh
- * glib/glib.symbols
- * glib/makegalias.pl: Logic to make the gstdio wrappers still
- available for compatibility, but not used in new code.
-
-Tue Feb 22 18:33:07 2005 Manish Singh <yosh@gimp.org>
-
- * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
-
-2005-02-20 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gqueue.c (g_queue_new): Use a memchunk for
- sizeof(GQueue)-sized chunks. (#167984, Fabrício Barros Cabral)
-
- * glib/gtimer.c (g_usleep): Fix usage of
- nanosleep(). (#163039, Bastien Nocera)
-
-2005-02-16 Adi Attar <aattar@cvs.gnome.org>
-
- * configure.in: Added "xh" to ALL_LINGUAS.
-
-2005-02-11 Tor Lillqvist <tml@novell.com>
-
- * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
- compilation errors with MSVC. (#167105)
-
-2005-02-10 Matthias Clasen <mclasen@redhat.com>
-
- * glib/goption.c (print_help): Take main group options into
- account when calculating column size. (#166921)
- (g_option_context_parse): Accept -? as documented. (#166977)
-
-2005-02-09 Matthias Clasen <mclasen@redhat.com>
- * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
- here. (#166801, Kjartan Maraas)
-
-2005-02-08 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
- write out of bounds.
-
- * glib/goption.c (g_option_context_parse): Fix a
- one-too-short memory allocation. (#166609, Nicolas Laurent)
-
- * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
- MALLOC_CHECK_.
-
- * tests/option-test.c: Add a test for unkown short options.
-
-2005-02-07 Matthias Clasen <mclasen@redhat.com>
-
- * glib/glib.symbols:
- * glib/gutils.h:
- * glib/gutils.c (g_listenv): New function to list all
- environment variables. (#166327, Hans Petter Jansson)
+2005-08-23 Matthias Clasen <mclasen@redhat.com>
-2005-02-07 Tor Lillqvist <tml@novell.com>
+ * glib/gutils.c: Fix the crt_externs.h include.
- * glib-zip.in: Add gmodule-no-export-2.0.pc.
+2005-08-23 Stepan Kasal <kasal@ucw.cz>
-Sun Feb 6 21:59:09 2005 Manish Singh <yosh@gimp.org>
+ * NEWS: Fix spelling of my first name.
- * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
- into the preprocessor, since glib.symbols could need #defines
- from them.
+2005-08-23 Matthias Clasen <mclasen@redhat.com>
-Sun Feb 6 12:09:55 2005 Manish Singh <yosh@gimp.org>
-
- * glib/gatomic.c: Don't use matching constraints for asm mem
- parameters. This makes the code match with current glibc, and
- quiets some warnings with gcc 3.4.
-
-2005-02-05 Tor Lillqvist <tml@novell.com>
-
- * configure.in (G_LIBS_EXTRA)
- * glib/giowin32.c: I think we can include <winsock2.h> and link
- with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
- and it's available as an update for it. Not that we use any actual
- Winsock 2 -only features, but still, simpler to link directly with
- ws2_32.dll instead of going through wsock32.dll.
-
- * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
- stability version, call g_file_get_contents_utf8(), not
- itself. (#166386, Bill Skaggs)
-
-2005-02-04 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Remove the --enable-ansi option (#160469)
-
- * configure.in: Define a HAVE_GNUC_VISIBILITY automake
- conditional.
-
- * glib/Makefile.am (TESTS): Only check the abi if
- the compiler supports visibility, otherwise we
- know there will be (harmless) extra symbols.
- (#166181, Ed Avis)
-
-2005-02-02 Tor Lillqvist <tml@novell.com>
-
- * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
- pid_t. (#165910) GLib does not pretend to be a POSIX emulation
- library.
-
- * glib/gstdio.c: In the Win32 part of all functions, handle
- invalid UTF-8 more robustly. Don't pass the resulting NULL
- wide-char or codepage strings on to C library functions, but bail
- out early. (#166084)
-
- * glib/gfileutils.c: Don't use potentially incorrect errno in
- several places. (#165951)
- (g_mkstemp): Set errno appropriately.
-
-2005-02-02 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.c: Move doc comments inline.
-
- * glib/ghash.h: Adjust some argument names.
-
- * configure.in: Give meaningful names to g_memmove()
- arguments.
-
-2005-02-01 Matthias Clasen <mclasen@redhat.com>
-
- * tests/keyfile-test.c (test_key_remove): Add test case for
- key removal.
-
- * glib/gkeyfile.c (g_key_file_remove_key): Actually remove
- the key from the list of pairs. (#165980, David Hoover)
-
- * glib/gkeyfile.c: Doc clarifications. (#165907, Vincent Untz)
-
- * tests/keyfile-test.c (test_group_remove): Add test case for
- group removal.
-
- * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
- if the group doesn't exist. (#165887, Mathias Hasselmann)
-
-2005-01-30 Matthias Clasen <mclasen@redhat.com>
-
- * tests/keyfile-test.c: Some more unit tests.
-
-2005-01-28 Christian Rose <menthos@menthos.com>
-
- * configure.in: Added "tl" to ALL_LINGUAS.
-
-2005-01-24 Matthias Clasen <mclasen@redhat.com>
-
- * tests/run-markup-tests.sh: Let $srcdir default to .
-
- * tests/markups/fail-40.gmarkup: Add a test with a long entity
- name.
-
- * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
- copy the entity name into a short buffer of fixed length. Instead,
- compare it in place with strncmp(), and do a full strdup() in the
- error path. (#165100, Simon Budig)
-
-2005-01-22 Tor Lillqvist <tml@novell.com>
-
- * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
- returns non-NULL. It does return NULL at least on Win32 if you
- pass it a negative time_t, which although wrong, shouldn't cause
- an application to abort. Instead return 2000-01-01 as a default
- date. Print a warning unless G_DISABLE_CHECKS. (#164622)
-
-2005-01-20 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
- interpret leading zeros as octal. The specification requires
- %f parsing, and %f doesn't allow octal.
-
- * tests/keyfile-test.c: Add some more tests.
-
- * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
- the order found in the file, rather than the opposite.
- (g_key_file_parse_value_as_string): Fix error reporting.
-
-2005-01-19 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as
- line end. (#163030, Bastian Nocera)
- (g_key_file_load_from_data): Make -1 work as a size.
-
- * tests/keyfile-test.c: Some unit tests for the keyfile
- parser.
-
- * tests/Makefile.am (test_programs): Add keyfile-test.
-
-2005-01-19 Tor Lillqvist <tml@novell.com>
-
- * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
- G_BREAKPOINT() if being debugged.
-
- * glib/gmessages.c (g_logv): For fatal messages on Win32, use
- G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
- debugged. Suggestion by Ulf Lamping.
-
-2005-01-18 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gqsort.c: Don't include alloca.h. It is not needed,
- and does not exist on win32. (#164468, Kazuki IWAMOTO)
-
- * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
- sparse warning. (#164467, Kjartan Maraas)
-
-2005-01-17 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gconvert.c (g_get_filename_charsets): Don't crash
- if G_FILENAME_ENCODING is empty. (#164330, Pawel Sakowski)
-
-2005-01-15 Tor Lillqvist <tlillqvist@novell.com>
-
- * configure.in: sh portability fix. Use "test" and not [.
- (#163144, Robert Ögren)
-
-2005-01-13 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gqsort.c: Sync to glibc. (#133994, Morten Welinder,
- patch by Kjartan Maraas)
-
-2005-01-11 Owen Taylor <otaylor@redhat.com>
-
- * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
-
- * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
- Use grep | head -n 1 instead of grep -m 1 which doesn't work
- with slightly older versions of GNU grep in
- install-libtool-import-lib rule.
-
-2005-01-11 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gdir.c (g_dir_open): Typo fix.
-
-2005-01-10 Owen Taylor <otaylor@redhat.com>
-
- * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
-
-2005-01-09 Hans Breuer <hans@breuer.org>
-
- * glib/gfileutils.c : make it compile with mvc6 default sdk,
- (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
+ * Bump version
-2005-01-09 Tor Lillqvist <tlillqvist@novell.com>
+ * === Released 2.8.1 ===
- * glib/gwin32.c: Include also wchar.h for wcslen on
- Cygwin.
- (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
+ * NEWS: Updates
- * glib/gfileutils.c: Include <io.h> on Windows for
- prototypes. (#163390, Kazuki Iwamoto)
+2005-08-20 Hans Breuer <hans@breuer.org>
-2005-01-07 Matthias Clasen <mclasen@redhat.com>
+ * glib/makefile.msc.in : link with ws2_32.lib
- * NEWS: Typo fixes.
+2005-08-18 Tor Lillqvist <tml@novell.com>
- * configure.in: Bump version
+ * configure.in: Check for <sys/wait.h>
- * === Released 2.6.1 ===
+ * glib/gbacktrace.c: Include <sys/wait.h> on if HAVE_SYS_WAIT_H.
-2005-01-07 Matthias Clasen <mclasen@redhat.com>
+2005-08-18 Ross Burton <ross@burtonini.com>
- * configure.in:
- * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
- which is currently just a copy of gmodule-2.0.pc, but makes
- it explicit that it adds --export-dynamic.
+ * glib/gstring.c:
+ Optimise single-character insertions.
- * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
-
-2005-01-06 Tor Lillqvist <tml@iki.fi>
-
- * glib/Makefile.am
- * gobject/Makefile.am: glib.def and gobject.def are generated, not
- in $(srcdir). (#163143, J. Ali Harlow)
-
- * configure.in
- * glib/Makefile.am
- * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
- J. Ali Harlow)
-
-2005-01-05 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.h: Simplify the inlining magic to make it
- work at Oh zero. (#162990, Kalpesh Shah)
-
-2005-01-04 Tor Lillqvist <tml@iki.fi>
-
- * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
- instead of setlocale() on Windows. setlocale() returns strings
- like "Turkish_Turkey".
-
-2005-01-04 Matthias Clasen <mclasen@redhat.com>
-
- Fix the inlining magic. (#157536, Jens Hatlak, and
- #149907, Morten Welinder)
+ * glib/gutf8.c:
+ Note copied code.
- * configure.in: Define G_CAN_INLINE in glibconfig.h
-
- * glib/gutils.h: Streamline the inlining magic a bit,
- don't use extern when implementing the non-inlined
- version.
-
-2005-01-03 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.c (g_find_program_in_path): Don't return
- directories. (#160738, Tommi Komulainen)
-
- * glib/gfileutils.c (g_file_get_contents): Clarify the
- documentation. (#162251, Mariano Suárez-Alvarez)
-
-2005-01-02 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gutils.c (g_setenv, g_unsetenv): Clarify the
- docs. (#162747, Crispin Flowerday)
-
-2005-01-01 J. Ali Harlow <ali@juiblex.co.uk>
-
- * configure.in: Don't use AC_TRY_RUN to test for long long format
- when using the MSVCRT.DLL runtime since we know the answer anyway
- and it causes some mild inconvience when cross compiling.
-
- * README.win32: Add a reference to the cross compiling section
- of the reference manual.
-
- * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
- requires %I64i instead of %lli. (#161306)
-
-2005-01-01 Tor Lillqvist <tml@iki.fi>
-
- * glib/gutils.c: Make the g_getenv() ABI backward compatibility
- wrapper more robust.
-
-2005-01-01 Tor Lillqvist <tml@iki.fi>
-
- * glib/glib.symbols
- * glib/gutils.h
- * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
- and g_find_program_in_path() take and return UTF-8 strings on
- Win32. Implement DLL ABI backward compatility for them, too. Move
- all the DLL ABI stability wrappers to the end of the file. Use
- wide character API when available in inner_find_program_in_path().
-
- * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
- use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
- to consider somebody actually having anything else than ASCII
- in PATHEXT, but...)
-
-2004-12-31 Tor Lillqvist <tml@iki.fi>
-
- * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
- use GetFileAttributes() instead of stat(). stat() is unreliable
- for corner cases like '\\server\share' or '.\'. Part of fixing
- #161797. When testing for executability, in addition to the fixed
- set of executable file name extensions also check the PATHEXT
- environment variable.
-
-2004-12-30 Tor Lillqvist <tml@iki.fi>
-
- * glib/gutils.c (g_get_current_dir): In the Win32 version, use
- GetCurrentDirectory() directly for simpler buffer length
- management. I don't trust getcwd() getting it right all the time.
-
-2004-12-30 Matthias Clasen <mclasen@redhat.com>
-
- * glib/gfileutils.c (g_file_test): Typo fix.
-
-2004-12-30 Tor Lillqvist <tml@iki.fi>
-
- * glib/gutils.c (g_path_skip_root): Require UNC paths to start
- with exactly two slashes.
- (g_get_current_dir): Use wide character API when available.
- (g_path_get_dirname): Handle UNC paths better. Part of fix for
- #161797.
-
-2004-12-27 Matthias Clasen <mclasen@redhat.com>
-
- * configure.in: Add an OS_LINUX conditional.
-
- * glib/Makefile.am (TESTS): Only check the ABI on
- linux, since the shell script is not portable, and libtool
- deficiencies may distort the ABI on other platforms. (#161741)
+ * tests/string-test.c:
+ Add tests for new optimisation, and fix a leak.
-2004-12-21 Matthias Clasen <mclasen@redhat.com>
+2005-08-17 Matthias Clasen <mclasen@redhat.com>
- * glib/goption.c (print_entry): Don't show
- the special G_OPTION_REMAINING entry. (#161934,
- Matthew F. Barnes)
+ * configure.in: Check for crt_externs.h and _NSGetEnviron.
-2004-12-20 Tor Lillqvist <tml@iki.fi>
+ * glib/gutils.c: On Darwin, include crt-externs.h and
+ define environ using _NSGetEnviron(). (#313731)
- * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
- docs.
+2005-08-16 Stepan Kasal <kasal@ucw.cz>
-2004-12-20 Matthias Clasen <mclasen@redhat.com>
+ * glib/gutils.c (g_get_any_init): Move the body of the big if...
+ (g_get_any_init_do): ... to this new function.
+ (g_get_any_init): Declare as inline.
+ (g_get_any_init_locked): New inline function, does the locking.
+ Make use of these two throughout the code.
- * tests/option-test.c: Add some tests for '--'
- stripping.
+2005-08-15 Matthias Clasen <mclasen@redhat.com>
- * glib/goption.c (g_option_context_parse): Don't
- strip '--' if it would be needed by a second option
- parser. (#161701)
+ * glib/gbacktrace.c (g_on_error_stack_trace): Wait for
+ the child process and then simply return. This makes
+ The "S" option work as documented in g_on_error_query().
+ (#313125, Matthew F. Barnes)
- * glib/gunicollate.c (g_utf8_collate): Make docs
- more accurate. (#161683, Marcin Krzyzanowski)
+ * glib/gunicode.h: Update the link to Unicode category
+ values. (#313369, Behnam Esfahbod)
-2004-12-19 Matthias Clasen <mclasen@redhat.com>
+ * glib/gqueue.c (g_queue_find_custom): Clarify docs
+ a little. (#311727, Tristan van Berkom)
- * glib/goption.c (g_option_context_parse): Call
- post-parse hooks also if argv is NULL. (#161668,
- Marcin Krzyzanowski)
+ * glib/abicheck.sh, gobject/abicheck.sh: Make the
+ check work on ia64 too, where some symbols ended up
+ in yet another section.