+2001-03-09 Hans Breuer <hans@breuer.org>
+
+ * gobject/gobject.def : updated
+
+2001-03-08 Tor Lillqvist <tml@iki.fi>
+
+ * glib.def
+ * gobject/gobject.def
+ * gobject/makefile.mingw.in: Update.
+
+2001-03-08 Sven Neumann <sven@gimp.org>
+
+ * gtree.[ch]:
+ * docs/reference/glib/tmpl/trees-binary.sgml: added new function
+ g_tree_lookup_extended().
+
+Thu Mar 8 16:23:34 2001 Tim Janik <timj@gtk.org>
+
+ * ghook.[hc]: destruction cleanup. there's one
+ ->finalize_hook member in the hooklist now that gets
+ called when a hook should be destroyed, that's it.
+ that function is guarranteed to be called only when
+ all ref_counts to the hook vanished, thus also when
+ the hook is not in call.
+
+2001-03-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
+
+Wed Mar 7 09:32:06 2001 Tim Janik <timj@gtk.org>
+
+ * glib-object.h: add gvaluearray.h.
+
+ * gstring.[hc]: fixup naming of g_string_sprint*.
+
+ * gtypes.h: fixed GCompareDataFunc naming.
+
+2001-03-07 Christian Meyer <chrisime@gnome.org>
+
+ * configure.in: Added de (German) to ALL_LINGUAS.
+
+2001-03-02 Christophe Merlet <redfox@eikonex.org>
+
+ * configure.in: Added fr (French) to ALL_LINGUAS.
+
+2001-03-01 Tor Lillqvist <tml@iki.fi>
+
+ * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
+ double backslash (UNC path), this will of course be matched by the
+ test for an initial G_DIR_SEPARATOR right up front. Silly me.
+ (g_find_program_in_path): Implement on Win32. Append the
+ executable file name suffixes from PATHEXT in turn while looking
+ for the program.
+ (g_find_program_in_path): If the program we are looking for is a
+ relative path in a subdirectory, don't do any path search.
+ (g_get_any_init): (Win32) Also look for the USERPROFILE env var
+ indicating the home directory equivalent.
+ (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
+ which isn't defined with MSVC.
+
+ * testglib.c (main): Test g_find_program_in_path() on Win32 by
+ looking for more.com and regedit.
+
+ * glib.def: Add g_find_program_in_path.
+
+2001-02-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthreadpool.c (g_thread_pool_thread_proxy): Make
+ max_unused_threads work for -1 as well.
+
+2001-02-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthread.h (struct _GThread): Change the order to match the order
+ in g_thread_create().
+
+ * gthread.c (g_static_rec_mutex_lock_full): Also do the right
+ thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
+ mutex, that is already locked.
+
+Thu Feb 22 10:31:36 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gmain.c (g_source_remove_poll): Add missing implementation
+ of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
+
+2001-02-21 Tor Lillqvist <tml@iki.fi>
+
+ * gutils.c (g_find_program_in_path): Implement on Win32.
+
+ Cygwin support contributed by Stefan Ondrejicka
+ <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
+ adding support for auto*/libtool for mingw.
+
+ * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
+ still distribute the hand-written makefiles and *.win32.in files,
+ though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
+ Use -no-undefined. Pass -export-symbols glib.def to libtool.
+
+ * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
+ and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
+ calls for Cygwin and mingw support. Check for %I64u guint64
+ format (in MS C library). Set G_MODULE_IMPL on mingw and
+ Cygwin. Use ac_object and ac_exeext. Set GIO, GSPAWN, PLATFORMDEP
+ and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
+ automake conditional on Win32.
+
+ * glib.h: Include gwin32.h also on Cygwin.
+
+ * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
+ Unix) for Cygwin's sake.
+
+ * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
+
+ * gconvert.c
+ * gthread.c
+ * gutf8.c
+ * gutils.c: For code needed both on Cygwin and native Win32,
+ test for G_PLATFORM_WIN32.
+
+ * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
+ in case compiling a static library on Win32 or Cygwin.
+
+ * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
+ dirent emulation on Cygwin.
+ (get_package_directory_from_module) Convert return value from
+ GetModuleFileName() to POSIX path on Cygwin.
+
+ * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
+ and libgmodule as appropriate. Use -no-undefined.
+
+ * gbacktrace.c: Move #ifdefs around a bit on Win32.
+
+2001-02-21 Tor Lillqvist <tml@iki.fi>
+
+ * gshell.c (unquote_string_inplace): Make static.
+
+ * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
+ definition, remove definition from here.
+
+ * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
+
+ * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
+ Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
+
+ * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
+
+ * makefile.mingw.in: Remove install target, Windows isn't Unix.
+ (DEFINES): Add -DDLL_EXPORT.
+
+ * testgdate.c
+ * testgdateparser.c
+ * testglib.c: Undefine GLIB_COMPILATION.
+
+ * testglib.c: Make some vars static. Add Cygwin path tests.
+
+ * glib.def: Updates.
+
+ * .cvsignore
+ * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
+
+2001-02-19 Hans Breuer <hans@breuer.org>
+
+ * glib/glib.def, gobject/gobject.def : added nissing symbols
+
+ * gobject/makefile.msc : updated
+
+ * glib/gmessages.c : call the "debug interrupt" before exiting the
+ program, if build with msvc as debug version. Which gives the opportunity
+ to see the callstack, etc.
+
+ * glib/gthread.c : thread->pid is only defined #ifdef
+ G_THREAD_USE_PID_SURROGATE
+
+Mon Feb 19 07:32:38 2001 Tim Janik <timj@gtk.org>
+
+ * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
+ don't exit with errorcode!=0 for --help or -h.
+
+ * Makefile.am:
+ * configure.in: build glib-config-2.0.
+
+2001-02-17 Havoc Pennington <hp@pobox.com>
+
+ * gthread.c: include string.h
+
+ Applied patch from Soeren Sandmann:
+
+ * testglib.c: const fixes
+
+ * gwin32.h: format cleanups
+
+ * gutils.c (g_atexit): constify a variable
+ (g_find_program_in_path): constification
+ (g_basename): G_CONST_RETURN
+ (g_path_skip_root): G_CONST_RETURN
+ (g_getenv): G_CONST_RETURN
+ (g_get_user_name): G_CONST_RETURN
+ (g_get_real_name): G_CONST_RETURN
+ (g_get_home_dir): G_CONST_RETURN
+ (g_get_tmp_dir): G_CONST_RETURN
+ (g_get_prgname): G_CONST_RETURN
+ (_glib_gettext): G_CONST_RETURN
+
+ * gunicode.h: formatting cleanups
+
+ * gstrfuncs.c (g_strerror): G_CONST_RETURN
+ (g_strsignal): G_CONST_RETURN
+
+ * gspawn.c (g_execute): const on variables
+
+ * gmessages.c (printf_string_upper_bound): fix const on a variable
+
+ * gmem.c (g_mem_chunk_new): make the "name" arg const
+ (struct _GRealMemChunk): make the "name" field const
+
+ * gfileutils.c (g_file_open_tmp): store const return in a const
+ gchar* variable
+
+ * gdataset.c (g_quark_to_string): G_CONST_RETURN
+
+Sat Feb 17 07:26:33 2001 Tim Janik <timj@gtk.org>
+
+ * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
+ (on OSF1 V5.0).
+
+2001-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * acconfig.h, configure.in: Reverted the changes necessary to
+ enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
+
+ * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
+ instead of gthread/gthread-posix.c. While the latter has the
+ advantage, that it is conceptually cleaner, it makes
+ g_thread_self_posix_impl _very_ slow and that hurts
+ GStaticRecMutex and other things. So the new version is less
+ clean, but faster.
+
+2001-02-09 Havoc Pennington <hp@redhat.com>
+
+ * gconvert.c (g_convert): don't overwrite errors
+
+ * gerror.c (g_set_error): improve warning message if an error is
+ overwritten
+ (g_propagate_error): ditto
+
+2001-02-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
+ g_static_rec_mutex_free, g_static_private_init,
+ g_static_private_free, g_static_rw_lock_init to allow the usage of
+ all those types dynamically. (g_static_rw_lock_free already
+ existed). Aditionally freed static_private indeces are reused
+ now. Untill now the array would just grow if you would use more
+ and more static_private. That required adding a slist of all
+ running threads, which could potentially be of good use later. It
+ is not exported however. Renamed a LOCK and small indentation
+ fixes.
+
+ * tests/thread-test.c: Test the new static_private index freing
+ and reusing feature.
+
+Mon Feb 12 15:01:09 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
+
+2001-02-10 Tor Lillqvist <tml@iki.fi>
+
+ * gtypes.h
+ * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
+
+ * glib.def
+ * gmem.h: Mark glib_mem_profiler_table for export.
+
+ * gwin32.c (get_package_directory_from_module): Don't store
+ address of local variable in hashtable.
+
+2001-02-08 Fatih Demir <kabalak@kabalak.net>
+
+ * configure.in: Added "tr" to ALL_LINGUAS.
+
+2001-02-04 Tor Lillqvist <tml@iki.fi>
+
+ * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
+ files are appearing now. If the sublanguage starts with '@', don't
+ use a '_' separator. South Africa is 'ZA', not 'SA'.
+
+Sun Feb 4 07:38:32 2001 Tim Janik <timj@gtk.org>
+
+ * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
+ g_trap_instance_signals, g_trace_instance_signals and
+ GRUNTIME_DEBUG.
+
+ * gmem.c: s/glib_trap_/g_trap_/.
+
+2001-02-04 Tor Lillqvist <tml@iki.fi>
+
+ * tests/Makefile.am (thread_LDADD): Change order of libs,
+ put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
+
+2001-02-02 Tor Lillqvist <tml@iki.fi>
+
+ * giochannel.h
+ * giowin32.c
+ * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
+
+ * glib.def: Add missing functions.
+
+2001-02-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthread.c, gthread.h: Added g_static_mutex_init to allow
+ initialization of a GStaticMutex, that can not be initialized with
+ G_STATIC_MUTEX_INIT, for example in allocated structures.
+
+Wed Jan 31 13:46:58 2001 Owen Taylor <otaylor@redhat.com>
+
+ * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
+
+2001-01-31 Tor Lillqvist <tml@iki.fi>
+
+ * glibconfig.h.win32.in: Corresponding change as below to
+ GStaticMutex.
+
+2001-01-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthread.c, gthread.h: Added g_static_mutex_free to allow using
+ GStaticMutexes with limited lifetime without leaking.
+
+ * configure.in: GStaticMutex doesn't have to provide extra space
+ for debugging information for G_ERRORCHECK_MUTEXES, as then the
+ non-default implementation (runtime_mutex) is used anyway.
+
+ * gthread.h (g_cond_wait): Added debug information for
+ g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
+
+2001-01-29 Tor Lillqvist <tml@iki.fi>
+
+ * glibconfig.h.win32.in: Use the same GMutex structure as the
+ configure-generated glibconfig.h does.
+
+ * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
+ says jbdoll@kepri.re.kr.
+
+2001-01-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gthread.c: Broadcast the condition, if there are waiting
+ readers, as all might read at the same time. Only signal the
+ writer thread, if there are no more readers.
+
+2001-01-25 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.mingw.in
+ * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
+ if makefile.mingw.in has changed with a check if said .in file
+ exists. (This rule is mainly a convenience for yours truly.)
+
+ * giowin32.c: Socket support rewritten. It was utterly broken, and
+ untested in fact. We still do use a thread for each socket being
+ watched, but instead of blocking in recv() (which of course was
+ plain stupid for sockets being listen()ed on in a server-type
+ application), we block in select(). The read method for sockets
+ calls recv(). It is now possible for the application to call
+ accept(), recv() or send() in the callback, just like on
+ Unix. Tested with code kindly provided by Andrew Lanoix.
+
+ Rename g_io_channel_win32_new_stream_socket() to
+ g_io_channel_win32_new_socket() as it isn't restricted to stream
+ sockets.
+
+ * gmain.c (g_poll): Related changes in the Win32 version of
+ g_poll(). When polling for messages, always do a PeekMessage()
+ first. We used to miss messages if several were posted between
+ calls to g_poll().
+
+ * giochannel.h: Improve Win32-related comments.
+
+ * gutf8.c: (Win32) Include <stdio.h> for sprintf.
+
+ * tests/gio-test.c: (Win32) Add tests for polling for Windows
+ messages.
+
+ * tests/makefile.mingw.in: Remove superfluous compilation command
+ line.
+
+2001-01-23 Alex Larsson <alexl@redhat.com>
+
+ * gmain.c (g_source_callback_unref): Free the callback
+ (g_source_set_callback): Initialize the callback refcount
+
+2001-01-20 Tor Lillqvist <tml@iki.fi>
+
+ * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
+ currently commented out from gutils.h, fix it to return the same
+ CP%d value as g_get_charset().
+
+2001-01-19 Kjartan Maraas <kmaraas@gnome.org>
+
+ * gconvert.c: Fix typo.
+ * gfileutils.c: Same here.
+ * configure.in: Added no to ALL_LINGUAS
+
+2001-01-17 Tor Lillqvist <tml@iki.fi>
+
+ * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
+ comments.
+ (g_win32_get_package_installation_directory): Add one parameter,
+ the name of a DLL in the package. Add possibility to use that to
+ deduce the installation directory if not entered into the
+ Registry. Make the return value dynamically allocated.
+ (g_win32_get_package_installation_subdirectory): New convenience
+ function.
+
+ * gutils.c (GLIB_LOCALE_DIR)
+ * gwin32.h: Adapt accordingly.
+
+ * testglib.c (main): Adapt tests accordingly.
+
+Tue Jan 16 23:20:38 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gutils.c glibintl.h: Optimize for size rather than speed by
+ making _() always call _glib_gettext() instead of conditionally
+ calling gettext() or _glib_gettext_init. glib only uses translated
+ strings in slow error handling code anyways.
+
+ * glibintl.h: g'ify types.
+
+ * Makefile.am: include glibintl.h in _SOURCES
+
+2001-01-17 Tor Lillqvist <tml@iki.fi>
+
+ * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
+
+ * makefile.mingw.in
+ * makefile.msc.in: Use the GNU intl library.
+
+ * gwin32.c (g_win32_get_package_installation_directory): New
+ function. To be used by various GLib-using packages to get their
+ installation directory, which should be stored in the Registry by
+ some installer.
+
+ * gwin32.h: Declare it.
+
+ * testglib.c (main): Test it.
+
+ * gutils.c: On Win32, define GLIB_LOCALE_DIR using
+ g_win32_get_package_installation_directory().
+
+ * glib.def: Update.
+
+Mon Jan 15 21:39:06 2001 Owen Taylor <otaylor@redhat.com>
+
+ * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
+
+Mon Jan 15 21:12:49 2001 Owen Taylor <otaylor@redhat.com>
+
+ * configure.in acconfig.h glibintl.h gutils.c
+ po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
+ support.
+
+ * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
+ some more and put them in this file, though they also need
+ to be included in acinclude.m4 due to the brokeness of
+ aclocal.
+
+ * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
+ gshell.c: Remove dummy _() #defines, include glibintl.m4.
+
+2001-01-09 Tor Lillqvist <tml@iki.fi>
+
+ * giowin32.c: Rework the changes needed to pass mainloop-test. Now
+ we don't need to call TerminateThread() after all, which is a
+ relief, as the docs have a BIG RED WARNING SIGN about using that
+ API. Instead, when closing a fd channel that has a reader thread
+ running, just mark it as non-running and additionally mark the fd
+ as ripe for closing. When the reader thread hopefully eventually
+ gets something (and EOF or some actual data), it will note that it
+ shouldn't be running, break out of the loop, and close the fd.
+
+ The socket channel closing code should probably be changed
+ similarily, but that will have to wait until I have a test case.
+
+ (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
+ g_io_channel_win32_new_pipe_with_wakeups,
+ g_io_channel_win32_pipe_request_wakeups,
+ g_io_channel_win32_pipe_readable): Remove these, have been
+ obsolete for some time.
+
+ * gutils.c (g_basename, g_dirname): Don't warn about deprecation
+ on Win32. Code written for GLib 1.2 doesn't have much choice but
+ to use GLib >= 1.3 on Win32.
+
+ * glib.def: Update.
+
+2001-01-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gmem.c: Made g_profile_mutex a GMutex* instead of
+ G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
+ without native static mutexes. Contruct g_profile_mutex in
+ g_mem_init().
+
+2001-01-06 Tor Lillqvist <tml@iki.fi>
+
+ * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
+ strlen() if arg is negative in the Win32 code, too.
+
+ * giowin32.c: Changes necessary to be able to run
+ mainloop-test. We can't close the fd that our (internal) reader
+ thread is sitting doing a blocking read() from. We must terminate
+ the thread first. Keep track of thread handle, and close it when
+ thread is dying. Start reader thread with the lower-level
+ CreateThread() instead of _beginthreadex() from the C runtime, in
+ order to be able to use TerminateThread(). Hopefuly this isn't
+ harmful.
+
+ * glib.def: Update.
+
+ * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
+ unicode-encoding.
+
+ * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
+ on Win32.
+
+ * tests/unicode-encoding.c (process): Add missing "line" argument
+ to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
+ converts to UTF-16BE if we ask for unspecific UTF-16.
+ (main) Handle also '\r'.
+
Fri Jan 5 11:25:42 2001 Owen Taylor <otaylor@redhat.com>
* configure.in (PACKAGE): move $enable_debug down below