Added g_static_mutex_init to allow initialization of a GStaticMutex, that
[platform/upstream/glib.git] / ChangeLog.pre-2-0
index 0fb9444..ad1a004 100644 (file)
@@ -1,3 +1,297 @@
+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-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
+       checks for GCC to avoid setting CFLAGS prematurely,
+       change checks to avoid adding -g twice.
+
+       * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
+       0 termination.
+
+       * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
+
+       * tests/mainloop-test.c (main): Fix uses of 
+       g_main_loop_destroy().
+
+       * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
+       Tests for unicode-conversion code.
+
+       * gconvert.c (g_convert, g_convert_with_fallback): work around
+       a couple of GNU libc bugs.
+
+       * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
+       arguments to match g_convert(). Document.
+
+       * gunicode.[ch]: 
+         - Implement conversion functions to and from UTF-16
+         - Standardize unicode conversion functions on prototype like
+           g_convert.
+         - Add a lot of error checking to unicode conversion functions.
+
+       * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
+       variant of g_utf8_to_ucs4.
+
+       * gutf8.c (g_utf8_validate): 
+        - add g_return_if_fail (str != NULL).
+        - add checks for overlong strings, non-valid Unicode characters (>= 110000)
+          and single surrogates.
+
+2001-01-05  Tor Lillqvist  <tml@iki.fi>
+
+       * testglib.c (main): Add test for g_path_skip_root().
+
+       * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
+       forward slashes in the template.
+
+       * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
+       part of UNC paths. On all platforms, skip several initial
+       slashes. Add a few comments.
+       (g_get_any_init): On Win32, in case HOME is Unix-style with
+       (forward) slashes (some other applications apparently set it up
+       this way, convert to backslashed form.
+
+       * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
+       although using configure for mingw surely doesn't work yet.
+
+       * glib.def: Update.
+
+2001-01-02  Havoc Pennington  <hp@redhat.com>
+
+       * configure.in: remove glib-config-2.0
+
+       * Makefile.am: remove glib-config-2.0
+
+2001-01-03  Havoc Pennington  <hp@pobox.com>
+
+       * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule, 
+       fix from Michael Meeks
+
+       * Makefile.am (INCLUDES): DISABLE was spelled wrong
+
+Wed Jan  3 14:10:49 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
+       make dropping reference to running loop safe.
+
+Wed Dec 13 20:41:49 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * gmain.c (g_source_unref_internal): Unref callback->cb_data
+       if it was still set when the source is freed. (Usually, this
+       will be done by g_source_destroy.)
+
 2001-01-02  Dan Winship  <danw@helixcode.com>
 
        * garray.h (g_array_append_val, g_array_prepend_val,