2001-10-02 Sven Neumann <sven@gimp.org>
* glib/gstring.h (g_string_sprintfa): let the compatibility definition
point to the new name g_string_append_printf().
* glib/gscanner.h (GScannerMsgFunc): make third argument a gboolean.
(g_scanner_add_symbol, g_scanner_remove_symbol,
g_scanner_foreach_symbol): mark these
G__DISABLE_DEPRECATED. (#61469)
* glib/gscanner.c (g_scanner_msg_handler): make third argument gboolean. (#61468)
2001-09-30 Tor Lillqvist <tml@iki.fi>
* glib/gwin32.c
* glib/gwin32.h
* glib/glib.def: Remove own implementation of dirent
functions. Instead, gcc (mingw) users should go ahead and use the
<dirent.h> included with the mingw gcc, and the dirent functions
included in libmingw32, while MSVC users can use the same (public
domain) code, extracted from mingw-runtime sources and placed in
build/win32/dirent.[ch].
* glib/gwin32.c (get_package_directory_from_module,
g_win32_get_package_installation_directory): Use static lock to
protect static hash table.
Sat Sep 29 02:33:14 2001 George Lebl <jirka@5z.com>
* tests/testglib.c (main): cast the string size to gulong and use %lu
for printing to avoid 64bit issues
* glib/gstrfuncs.[ch] (g_ascii_strncasecmp): Change the 'n' argument
to gsize instead guint.
Fri Sep 28 19:41:32 2001 Owen Taylor <otaylor@redhat.com>
* glib/libcharset/* configure.in: Fix macros from libcharset
to work with autoconf-2.5x. (From Laszlo Peter.)
2001-09-24 Bruno Haible <haible@clisp.cons.org>
* glib/gwin32.c (g_win32_getlocale): When the sublangid is
SUBLANG_DEFAULT, return the locale of the language's main country,
not a country-neutral locale. E.g. "en_US" instead of "en". Add
handling of LANG_SORBIAN. Fix typo for SUBLANG_CHINESE_SIMPLIFIED
(China == CN, CH == Switzerland). Ignore empty environment
variable values.
2001-09-28 Tor Lillqvist <tml@iki.fi>
* glib/makefile.{mingw,msc}.in: Add localcharset.o. Just copy the
source file from libcharset and compile in this directory.
* glib/giochannel.c: Mark rest of g_set_error strings for
translation, too.
* glib/giowin32.c: Add some debugging output functions, call them
when debugging.
(create_events, g_io_win32_msg_write): Free message fetched with
g_win32_error_message ().
(g_io_win32_check): Indentation fixes.
(g_io_win32_fd_read,g_io_win32_sock_read): Don't always return
G_IO_STATUS_NORMAL. Do return G_IO_STATUS_EOF if we got 0 bytes,
like on Unix. This helps making the test programs run
successfully.
* glib/gmain.c (g_poll): Return the code ifdeffed out with
TEST_WITHOUT_THIS. Can't remember why it was ifdeffed out. Things
seem to work as previously with the code in place. Especially
spawn-test didn't work with the code ifdeffed out (Bug#61067).
* glib/grand.c (g_rand_new): Don't try to use /dev/urandom unless
on Unix.
* glib/gspawn-win32-helper.c (WinMain): Remove Sleep(10000)
accidentally left in.
gthread:
2001-09-28 Tor Lillqvist <tml@iki.fi>
* gthread-win32.c: Use an extra level of indirection for GMutex.
It is now a pointer either to a pointer to a CRITICAL_SECTION
struct, or to a mutex HANDLE. This is needed in case the user
defines G_ERRORCHECK_MUTEXES. G_MUTEX_SIZE must correctly reflect
the size of *GMutex, but this used to vary depending on whether we
at run-time chose to use CRITICAL_SECTIONs or mutexes.
(g_mutex_free_win32_cs_impl, g_cond_free_win32_impl): Call
DeleteCriticalSection() when done with it.
* gthread-impl.c (g_thread_init_with_errorcheck_mutexes): Call
g_thread_impl_init() before accessing
g_thread_functions_for_glib_use_default, as the
g_thread_impl_init() function might modify it.
po:
2001-09-28 Tor Lillqvist <tml@iki.fi>
* POTFILES.in: Add iochannel.c and giowin32.c.
* sv.po: Remove a bogus fuzziness indicator.
Thu Sep 27 14:26:57 2001 Owen Taylor <otaylor@redhat.com>
* glib/gstrfuncs.c (g_ascii_strup/down): Use gssize to
match the header. (Reported by Elliot Lee.)
Wed Sep 26 22:34:12 2001 Owen Taylor <otaylor@redhat.com>
Fixes for #58195, based on some ideas from Hidetosh Tajima.
* aclibcharset.m4 glib/libcharset: Add Bruno Haible's
portable-current charset detection code from libiconv.
* glib/gutf8.c (g_utf8_get_charset_internal): Rewrite
to use _g_locale_charset().
* glib/gutf8.c (_g_charset_get_aliases): Private functions
to get aliases from libcharset for a particular canonical
name.
* glib/gconvert.c: If loading a charset fails, try
aliases to look for fallbacks.
2001-09-26 Tor Lillqvist <tml@iki.fi>
* configure.in: Retract my change earlier today. Don't preset
autoconf variables in a try to match both mingw and MSVC. Instead,
he who packages a prebuilt GLib developer distribution for Win32
runs configure twice: once for mingw, once for MSVC, and then uses
diff -D on the glibconfig.h files to generate a suitably ifdeffed
glibconfig.h for distribution that suits both compilers. (Ditto
for config.h, although that file wouldn't be distributed in a
developer package, but in a source package for Win32 users who
want to build GLib but can't use configure.)
* glibconfig.h.win32.in
* config.h.win32.in: Generated by using diff -D as described above.
* tests/makefile.mingw.in (.c.exe): Correct name of gthread (import)
library.
gthread:
2001-09-26 Tor Lillqvist <tml@iki.fi>
* makefile.mingw.in: Fix couple of typos.
* gthread.def: Add g_thread_init_with_errorcheck_mutexes.
Wed Sep 26 15:33:37 2001 Owen Taylor <otaylor@redhat.com>
* Makefile.am po/Makefile.in.in: Fix distclean to
remove some extra files. #60993, Ben Gertzfield
Wed Sep 26 14:37:52 2001 Owen Taylor <otaylor@redhat.com>
* glib/gen-unicode-tables.pl glib/guniprop.c
glib/{gunibreak,gunichartables,gunidecomp}.h:
Patch from Andrew Taylor to make much of the unicode
table data const so that it can be made read-only
and shared.
Wed Sep 26 12:41:05 2001 Owen Taylor <otaylor@redhat.com>
* glib/gstrfuncs.c (g_strdup_vprintf): Copy if
!g_mem_is_system_malloc, not the other way around.
(Found by James Antill.)
Wed Sep 26 11:00:31 2001 Owen Taylor <otaylor@redhat.com>
* glib/gstrfuncs.c (g_strnfill): Use memset; might be
faster if someone used this for a biiig string.
(Suggestion from Jakub Jelinek)
2001-09-26 Tor Lillqvist <tml@iki.fi>
* configure.in: (Win32:) Move the Win32 check closer to the start,
after the BeOS checks. Preset some autoconf variables so that
configure won't find those few headers and functions that gcc
(mingw) pretends to implement (even if the actual C library
doesn't), but MSVC doesn't. This because I want the same config.h
and glibconfig.h to be usable both from gcc and MSVC (as they use
the same C library). Some other minor hackery for this purpose.
* glibconfig.h.win32.in
* config.h.win32.in: Use versions generated by configure (and
hand-edited slightly).
Tue Sep 25 11:34:22 2001 Owen Taylor <otaylor@redhat.com>
* configure.in: Version 1.3.9 (binary, interface == 0)
* glib/gstrfuncs.c (g_ascii_strdown): Change g_ascii_strup/strdown
to take a 'len' argument to match g_utf8_strup/strdown. This
hopefully will also make it more obvious that they duplicate
the string rather than acting like g_strup/strdown.
(Suggestion from Matthias Clasen, #59550)
2001-09-25 Tor Lillqvist <tml@iki.fi>
* configure.in: More Win32 automake macros. For .def files:
GLIB_DEF, GMODULE_DEF, GOBJECT_DEF and GTHREAD_DEF. For .exp
files: TESTGMODULE_EXP (for programs that need to export symbols,
just testgmodule here). A new conditional, MS_LIB_AVAILABLE to
test whether the Microsoft librarian ("ar") is available to build
MS import libraries.
* glib/Makefile.am
* gmodule/Makefile.am: Use above. New rule to build MS import
library.
* glib/makefile.msc.in
* tests/makefile.msc.in
* tests/makefile.mingw.in: Use same DLL and import library names as
libtool.
gmodule:
2001-09-25 Tor Lillqvist <tml@iki.fi>
* makefile.mingw.in: Fix missing end @ in @LT_CURRENT@.
* makefile.msc.in: Use same DLL and import library names as
libtool.
gobject:
2001-09-25 Tor Lillqvist <tml@iki.fi>
* Makefile.am: Use new macros for .def file, and check for
MS_LIB_AVAILABLE, new rule to build MS import library.
* makefile.msc.in: Use same DLL and import library names as
libtool.
gthread:
2001-09-25 Tor Lillqvist <tml@iki.fi>
* Makefile.am: Use new macros for .def file, and check for
MS_LIB_AVAILABLE, new rule to build MS import library.
* makefile.msc.in: Use same DLL and import library names as
libtool.
2001-09-22 Hans Breuer <hans@breuer.org>
* glib/giowin32.c : simply setting is_readable and is_writeable
to TRUE does make Gimp plug-ins work again. Still no API known
to request this info on Win32 (see #57690)
2001-09-20 Tor Lillqvist <tml@iki.fi>
* glib/gutils.c (g_path_is_absolute): (Win32:) Accept also forward
slashes. (But still don't accept them in the other functions
here. This is a thorny issue. Windows in fact does treat / like \
on input (at least as local directory separators, dunno about
server/share separators). But GLib only has the one
G_DIR_SEPARATOR value, that apps should scan for, and use when
building pathnames. To properly fix this would require totally
abstracting pathnames, and don't having any path name scanning and
building in applications at all. Fat chance.)
(GLIB_LOCALE_DIR): Redefine only on "pure" Win32, not Cygwin. Use
subdirectory "share\locale", as on Unix.
* glib/gwin32.c: Don't need to define those langiage and
sublanguage constants here, current mingw (w32api) headers have
them.
* glib/glib.def: Add a few missing entry points.
* tests/testglib.c (main): Use same name for DLL as libtool does.
Use G_DIR_SEPARATOR in g_path_get_basename tests.
Wed Sep 19 16:35:22 2001 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_context_find_source_by[_funcs]_user_data):
Fix handling of user data when locating sources.
(#60414, Katsuhiro Okuno)
Wed Sep 19 14:17:31 2001 Owen Taylor <otaylor@redhat.com>
Patch from Matthias Clasen (#59806)
* configure.in: Check for vasprintf().
* glib/gmem.[ch]: Add g_mem_vtable_is_set() to be used
for efficiency hacks to avoid extra copies when not
needed.
* glib/gstrfuncs.c: Use vasprintf() to implement
g_strdup_printf() when available.
* glib/gmessages.c (g_logv): Avoid using
printf_string_upper_bound() when we have have vsnprintf.
* glib/gmessages.c (printf_string_upper_bound): Don't
segfault when warning about positional parameters.
Wed Sep 19 14:05:27 2001 Owen Taylor <otaylor@redhat.com>
* glib/{gcache.c,gmem.c,grel.c,gstring.c,gtimer.c,gtree}:
Patch from Darin Adler to remove GReal* structures in
favor of simple opaque typedefs in cases where there
were no non-private members. (#59693)
Wed Sep 19 12:49:11 2001 Owen Taylor <otaylor@redhat.com>
* glib/gutils.c (g_get_any_init): Handle failure of
sysconf and pick a fixed size buffer. (Happens on Cygwin
#60242)
2001-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gthread.h (GThreadFunctions): Add thread_equal function to
allow for platform defined function to compare two threads.
* glib/gthread.c: Use g_thread_functions_for_glib_use.thread_equal
when non-NULL instead of ==.
* gthread/gthread-posix.c: Add g_thread_equal_posix_impl and
add to the function vector g_thread_functions_for_glib_use_default.
* gthread/gthread-solaris.c, gthread/gthread-win32.c: Add NULL
as equal function, as on those two platforms you don't need an
equal function.
Tue Sep 18 22:57:33 2001 Tim Janik <timj@gtk.org>
* configure.in (GLIB_MICRO_VERSION): up version number to 1.3.8,
interface age 0, binary age 0.
* NEWS: updates.
Tue Sep 18 23:09:02 2001 Tim Janik <timj@gtk.org>
* gparam.[hc]: rename *nick and *blurb fields to catch
direct accesses in third party code.
provide g_param_get_nick(), g_param_get_blurb() and
g_param_get_name() accessors.
Tue Sep 18 18:23:02 2001 Owen Taylor <otaylor@redhat.com>
Fixes for compilation on Solaris (#59026, Frank Belew)
* glib/gqsort.c (g_qsort_with_data): Use g_alloca().
* glib/giochannel.c (g_io_channel_read_to_end): Fix use
of ternary on left-hand-side.
* configure.in: Handle the ac_cv_working_alloca_h variable
set by autoconf-2.5x.
Tue Sep 11 18:50:44 2001 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4 acinclude.m4: Remove commented
out sections for clarity.
2001-09-18 Tor Lillqvist <tml@iki.fi>
* glib/gmain.c
* glib/giowin32.c: Mark the _funcs tables for export.
* glib/glib.def: Add here, too.
* glib/gwin32.c (get_package_directory_from_module): No reason to
check for the module being in a bin or lib directory only when
module_name is non-NULL.
* glib/gwin32.c (g_win32_get_package_installation_directory):
Check first in HKEY_CURRENT_USER, then in HKEY_LOCAL_MACHINE.
* gmodule/Makefile.am: On Win32, pass a dummy -rpath flag to
libtool when building libgplugin_[ab].la, otherwise libtool
doesn't create a DLL, but a static archive.
* tests/strfunc-test.c: (main): Change so that it works
on platforms where isalpha is a macro only, without the
corresponding function that the C standard requires.
Also eliminate the multiple lists of ctype functions.
* tests/.cvsignore: Ignore the new test.
2001-09-17 Tor Lillqvist <tml@iki.fi>
* configure.in: Add variable for LT_CURRENT minus LT_AGE (the
suffix used by libtool on Win32 for DLLs). Set variables for the
compiled resource files on Windows. Handle the native Win32
gthread stuff.
* glib/Makefile.am
* gmodule/Makefile.am
* gobject/Makefile.am: (Win32) Add minor hacks to link in the object
file produced from the resource file. Use the lt-compile-resource
script from the build module. The non-hack way would be to teach
libtool, autoconf and automake about .rc files (which are a kind
of source code, after all, that gets compiled to object
files). But then there would be problems for those who wouldn't have
bleeding edge auto* and libtool.
* glib/glib.def
* gobject/gobject.def: Updates.
* glib/glib.rc.in
* gmodule/gmodule.rc.in
* gobject/gobject.rc.in
* gthread/gthread.rc.in: Update InternalName and OriginalFilename to
match libtool's naming convention for DLLs.
* glib/gutils.c: Ditto when constructing the DLL name in the
definition for GLIB_LOCALE_DIR.
* glib/makefile.mingw.in
* gmodule/makefile.mingw.in
* gobject/makefile.mingw.in
* gthread/makefile.mingw.in: Update import library names.
Modified Files:
glib/ChangeLog glib/glib/giochannel.h glib/glib/giochannel.c
* glib/giochannel.h glib/giochannel.c: Added a length argument
to g_io_channel_[set,get]_line_term(), allowing embeded nulls
and binary safe line termination strings
* glib/giochannel.c: Got rid of a compile warning in
g_io_channel_write_chars()
Mon Sep 10 17:13:36 2001 Tim Janik <timj@gtk.org>
* glib/gmessages.h: got rid of g_set_error_handler(),
g_set_warning_handler(), g_set_message_handler().
Wed Sep 5 05:24:07 2001 Tim Janik <timj@gtk.org>
* gobject/tmpl/gboxed.sgml: documented some functions.
* gobject/tmpl/objects.sgml: some fixups.
Mon Sep 10 19:27:47 2001 Tim Janik <timj@gtk.org>
* gtype.[hc]:
g_type_add_interface*(): implement the ability to add an interface to
a type whose parents already conform to this interface.
such "overriding" interfaces, when initialized, are not just initialized
with 0, but with a copy of the interface they override.
g_type_interface_peek_parent(): new function, return the interface
that this interface "overrides", if any.
* testgruntime.c: test new interface stuff.
2001-09-10 Alex Larsson <alexl@redhat.com>
* gobject/gboxed.[ch]:
* gobject/gsourceclosure.c:
Removed is_refcounted and GBoxedInitFunc from
g_boxed_type_register_static().