2008-07-28 Tor Lillqvist <tml@novell.com>
* glib-zip.in: Message catalogs should always get installed into
share/locale nowadays, don't bother with the convoluted logic
checking if they are in lib/locale instead. Put the correct helper
programs in the zipfile.
svn path=/trunk/; revision=7262
2008-07-28 Tor Lillqvist <tml@novell.com>
Fix problems on 64-bit Windows. Avoid warnings, some of which
indicated actual problems, some which were just annoyances.
Where casts to an integer type are needed for pointers, use
gssize. Technically intptr_t would be the more proper type, but we
still want to be compilable with MSVS6 and 7 which don't have
intptr_t. MSVS8 and 9 do have intptr_t, but in <crtdefs.h>, not
<stdint.h>.
Use %p to print out handles. Use gssize casts when assigning
GPollFD::fd fields.
Use G_GSIZE_FORMAT when printing size_t values.
* configure.in: Define automake conditional G_OS_WIN32_X64 which
is true on Win64.
* glib/giochannel.h: Use slightly different prototype for
g_io_channel_win32_new_messages() on Win64 with gsize instead of
guint.
* glib/giowin32.c
* glib/gmain.c
* glib/gspawn-win32.c
* tests/testglib.c: Generic changes as described above.
* glib/gmain.h: Don't bother mentioning GIMP in comment.
* glib/grel.c (tuple_hash_2): Use all bits of pointer.
* glib/gspawn-win32.c
* glib/gspawn-win32-helper.c: Use gssize types in the
communication between parent and helper process, so that we can
pass process handles, which are pointers, also on Win64.
* glib/gtimer.c (g_time_val_to_iso8601): time_t is 64 bits on
Win64 so we can't pass the address of a GTimeVal::tv_sec which is
a long directly to gmtime(). On the other hand, changing
GTimeVal::tv_sec to be a gint64 on Win64 is not really feasible
either, as that would then require changes in much code that uses
GTimeVals.
* glib/gspawn-win32.c
* glib/Makefile.am: Call the helper programs
gspawn-win64-helper.exe and gspawn-win64-helper-console.exe on
Win64, to avoid potential risk of running a 32-bit version of the
helper.
svn path=/trunk/; revision=7260
2008-07-27 Tor Lillqvist <tml@novell.com>
* glib/glib.symbols
* glib/gconvert.c
* glib/gdir.c
* glib/gfileutils.c
* glib/giowin32.c
* glib/gspawn-win32.c
* glib/gutils.c
* glib/gwin32.c: Bypass the Windows "ABI compatibility" symbols on
_WIN64. As there hasn't been any widely deployed 64-bit Windows
builds of the really old GLib (pre-2.8.1) versions those refer to,
there is no need to have the "ABI compatibility" versions in the
DLL.
* glib/makegalias.pl: Handle #ifndef _WIN64: Just output it, too.
svn path=/trunk/; revision=7257
2008-07-27 Tor Lillqvist <tml@novell.com>
* configure.in: Set LIB_EXE_MACHINE_FLAG to either X86 or X64 on
Windows. AC_SUBST it.
* */Makefile.am: Correspondingly, pass appropriate -machine
flag to lib.exe when producing the import library for the MS
toolchain.
svn path=/trunk/; revision=7255
2008-07-25 15:47:08 Tim Janik <timj@imendio.com>
* glib/tests/testing.c (test_random_conversions): added new sample
test to prepare for extended range random tests.
svn path=/trunk/; revision=7253
2008-07-24 Tor Lillqvist <tml@novell.com>
* glib/gdir.c: Include <stdio.h> for FILENAME_MAX on newer mingw
installations.
svn path=/trunk/; revision=7251
2008-07-24 Tor Lillqvist <tml@novell.com>
* glib/gslice.c (smc_notify_free): Use G_GSIZE_FORMAT instead of
the C99 "zu".
svn path=/trunk/; revision=7249
2008-07-24 Tor Lillqvist <tml@novell.com>
* configure.in: Must output the GLIB_USING_SYSTEM_PRINTF to
glibconfig.h using the same two phase code as for the other
defines in it. Can't check enable_included_printf directly in the
shell code that is the first argument to AC_CONFIG_COMMANDS().
Preset glib_cv_stack_grows=no on Windows to help
cross-compilation.
* configure.in: Enhancements for 64-bit Windows:
Handle also size_t being larger than long. It is long long
a.k.a. __int64 on the LLP64 Win64.
Set glib_void_p and glib_long correctly. Their assignments were
crossed. It hasn't mattered on LP64 platforms like all (?) 64-bit
UNIXes, but on the LLP Win64 it was wrong.
svn path=/trunk/; revision=7248
* glib/tests/option-context.c (group_captions()):
Set LANG variable to C in the forked process to get reproducable.
Don't silence the forked process in --verbose mode to support
debugging.
svn path=/trunk/; revision=7238
2008-07-21 Emmanuele Bassi <ebassi@gnome.org>
* glib/gtimer.c (g_time_val_to_iso8601): Use the right format
string to get leading zeros when converting to ISO 8601. (Sven
Herzberg)
svn path=/trunk/; revision=7232
2008-07-21 Emmanuele Bassi <ebassi@gnome.org>
* glib/gbookmarkfile.c:
(bookmark_app_info_new): Do not set the timestamp value
using time(), as it will be overwritten anyway. (#535223,
Michael Meeks)
(parse_application_element),
(bookmark_app_info_dump): Support the "modified" attribute,
which takes an ISO-formatted string instead of a Unix time
stamp, to keep the number of g_strdup_printf() calls to a
minimum.
* glib/gtimer.c:
(g_time_val_to_iso8601): Do not use strftime(): we know
the format and contents of the ISO 8601 date format we
use.
* tests/bookmarks/valid-03.xbel: Add a test file for the
modified attribute.
svn path=/trunk/; revision=7231
2008-07-20 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c (g_io_win32_prepare): Patch from Yu Kuan that
makes watched sockets behave much better. See gtk-devel-list
archives from May for the (unfortunately rather meager)
discussion. This patch fixes the presented simple test program,
which reasonably could be expected to work.
svn path=/trunk/; revision=7220
* glib/glib.symbols:
* glib/gstrfuncs.[hc]: Add g_dpgettext2() which is a
variant of g_dpgettext() taking context and id as separate
arguments.
* glib/gi18n-lib.h:
* glib/gi18n.h: Add an NC_() macro that is to C_() as N_()
is to _().
svn path=/trunk/; revision=7202
* glib/gstrfuncs.c (g_ascii_strtod): Document that this
function does accept localized infinities and nans. Reported
by Morten Welinder.
svn path=/trunk/; revision=7195
2008-07-10 Ryan Lortie <desrt@desrt.ca>
* docs/reference/glib/glib-sections.txt:
* glib/glib.symbols:
* glib/gmarkup.c:
* glib/gmarkup.h: add functions g_markup_parse_context_{push,pop} in
order to provide some small hooks on which to build easy-to-use
subparsers.
* glib/tests/Makefile: add new test
* glib/tests/markup-subparser.c: new test for subparsers
Fixes bug #337518.
svn path=/trunk/; revision=7174
2008-07-04 Michael Natterer <mitch@imendio.com>
Bug 541208 – Functions to easily install and use signals without
class struct slot
* tests/gobject/override.c: added tests for the new gsignal
overriding and chaining APIs.
svn path=/trunk/; revision=7158
* glib/gmain.c (g_get_current_time): Add a g_return_val_if_fail
check in both versions. Proposed by Patrik Olsson in bug 540545.
svn path=/trunk/; revision=7142
2008-07-02 Matthias Clasen <mclasen@redhat.com>
* configure.in: Workaround AC_C_BIGENDIAN breakage in autoconf 2.61.
Add a _cv_ to some variable names, since autoconf wants it.
svn path=/trunk/; revision=7141
2008-07-01 Cody Russell <bratsche@gnome.org>
* gio/gioenums.h:
* gio/giotypes.h:
Moved all relevant typedefs into these files.
* gio/*.[ch]:
Updated wrt added files.
Split types into separate file for easier maintainership. (#538564)
svn path=/trunk/; revision=7127
2008-06-29 Björn Lindqvist <bjourne@gmail.com>
Bug 539626 – Update docstrings for g_object_freeze_notify and
g_object_thaw_notify
* gobject/gobject.c: Explain how the freeze count works.
svn path=/trunk/; revision=7102
2008-06-26 Cody Russell <bratsche@gnome.org>
* configure.in: Add #define GLIB_USING_SYSTEM_PRINTF
to glibconfig.h, which specifies if GLib is using
the system printf functions for g_print*().
(#539999, by Tim-Philipp Müller)
svn path=/trunk/; revision=7099
2008-06-24 Paolo Borelli <pborelli@katamail.com>
Bug 539770 - migrate gstrfunc unit tests to gtest
* tests/strfunc-test.c:
* tests/testglib.c:
* tests/strtoll-test.c:
* tests/strtod-test.c:
* tests/string-test.c:
* tests/Makefile.am:
Removed old tests.
* glib/tests/fileutils.c:
* glib/tests/strfuncs.c:
* glib/tests/Makefile.am:
Added all the old tests migrated to the new unit test framework
and add new unit tests for some of the functions.
svn path=/trunk/; revision=7097
2008-06-23 Kristian Rietveld <kris@imendio.com>
* gobject/glib-mkenums.in: introduce an ENUMPREFIX substitution.
* gio/gioenumtypes.h.template: use @ENUMPREFIX@ instead of
hard coding "G" as prefix.
svn path=/trunk/; revision=7096
* docs/reference/gobject/tmpl/gobject-unused.sgml:
* gobject/gobject.h:
* gobject/gtype.c:
* gobject/gtype.h:
Move some content for gobject-unused.sgml and cleared empty entries.
The remaining 4 ones should be checked by some else. If they are not
needed. The file can be removed.
svn path=/trunk/; revision=7087
* docs/reference/gobject/Makefile.am:
Help poor little gtkdoc a bit and tell that it can ignore
G_GNUC_INTERNAL. Also disable including the unit-test header as this
causes warnings and we don't need it here.
svn path=/trunk/; revision=7082
* gobject/gboxed.c:
* gobject/gclosure.c:
* gobject/genums.c:
* gobject/gvalue.c:
Use file-names from the section file for SECTION: comments.
svn path=/trunk/; revision=7072
2008-06-21 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c: Improve Windows-specific parts of
documentation. Mention the different C library issue in more
places.
svn path=/trunk/; revision=7068
* configure.in:
* glib/gthread.h: Revert previous patch as it doesn't improve the
situation and results in other warnings.
svn path=/trunk/; revision=7064
2008-06-19 Tor Lillqvist <tml@novell.com>
Bug 539074 - Cannot get exit status with g_spawn_command_line_sync()
* glib/gspawn-win32-helper.c (main): Write also the exit status of
the spawned process to the error report pipe. Patch by Hiroyuki
Ikezoe.
svn path=/trunk/; revision=7060
* glib/gtimer.c (g_time_val_from_iso8601): set tv_usec to 0 rather
than 1 when a fraction of a second is not specified
(g_time_val_from_iso8601): calculate a fraction of a second
correctly even in case it does not happen to consist of exactly
six digits; do not allow random data after the ISO 8601 string,
only whitespace
(make g_time_val_to_iso8601): support fractions of a second
Patch by Peter Kjellerstedt
* tests/testglib.c: Update to match
svn path=/trunk/; revision=7057
2008-06-16 Michael Natterer <mitch@imendio.com>
* glib/goption.c (dgettext_swapped): changed return value to
const gchar* to fix warning.
svn path=/trunk/; revision=7046
2008-06-16 Ross Burton <ross@burtonini.com>
* gio/gfileenumerator.c:
Remove check for dispose implementation as it annoys Emmanuele.
svn path=/trunk/; revision=7045
2008-06-16 Ross Burton <ross@burtonini.com>
Bug 536252 – GFileEnumerator should allow access to the containing
GFile
* gio/gfileenumerator.c:
* gio/gfileenumerator.h:
* gio/gfile.h:
Add g_file_enumerator_get_container() and a container writeable
construct-only property. Also shuffle around typedefs to make it
compile.
* gio/glocalfileenumerator.c:
* gio/glocalfileenumerator.h:
* gio/glocalfile.c:
Instead of a string filename take a GFile in the constructor and
use it to set the container property.
* gio/gio.symbols:
* docs/reference/gio/gio-sections.txt:
Update with new API.
svn path=/trunk/; revision=7044
2008-06-13 Hans Breuer <hans@breuer.org>
* glib/gstrfuncs.c : to get the default translation target on
win32 use g_win32_get_locale() instead of setlocale(LS_MESSAGES,NULL)
Fixes bug #538044
* glib/makefile.msc.in gio/makefile.msc : updated
svn path=/trunk/; revision=7036
2008-06-11 Behdad Esfahbod <behdad@gnome.org>
Bug 503071 – Application direction changes to right to left even if
theres no translation
* glib/gi18n-lib.h:
* glib/glib.symbols:
* glib/gstrfuncs.h:
* glib/gstrfuncs.c:
Add new functions g_dgettext() and g_dngettext().
* glib/gutils.c (glib_gettext):
* glib/gfileutils.c (g_format_size_for_display):
* glib/goption.c (dgettext_swapped):
Use the new functions.
svn path=/trunk/; revision=7020
* glib/gunicollate.c (g_utf8_collate_key): Handle strfxrm returning
-1 a little better. Problem pointed out by Takao Fujiwara
svn path=/trunk/; revision=7015
2008-06-11 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c: g_win32_error_message() works fine for the
Winsock WSA* error codes, too, so drop the winsock_error_message()
function.
svn path=/trunk/; revision=7010
2008-06-11 Tor Lillqvist <tml@novell.com>
* glib/gmain.c
* glib/gspawn.c: Clarify what a "child pid" is in the doc
comments.
svn path=/trunk/; revision=6995
2008-06-02 Yevgen Muntyan <muntyan@tamu.edu>
Bug 531403 - g_utf8_collate broken on Mac.
* glib/gunicollate.c: (g_utf8_collate): use UCCompareTextDefault;
(collate_key_to_string), (carbon_collate_key_with_collator),
(carbon_collate_key), (carbon_collate_key_for_filename): new
functions using Carbon API to get collate key for g_utf8_collate_key()
and g_utf8_collate_key_for_filename();
(g_utf8_collate_key), (g_utf8_collate_key_for_filename): use those.
svn path=/trunk/; revision=6969
2008-05-30 Michael Natterer <mitch@imendio.com>
Bug 535628 - test/patterntest.c still includes gpattern.h
directly.
* tests/patterntest.c: don't include "glib/gpattern.h" directly.
Patch from Hiroyuki Ikezoe.
svn path=/trunk/; revision=6964
2008-05-30 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c (g_access) [Win32]: Mask out X_OK to avoid problem
on Vista. X_OK was just ignored by access() in earlier Microsoft C
libraries. (Which is fine as executability has little meaning on
Windows.) The one on Vista returns an error if X_OK is passed.
svn path=/trunk/; revision=6961
2008-05-29 Tor Lillqvist <tml@novell.com>
* glib/gstdio.h
* glib/gstdio.c: Add g_utime(). No need to include <sys/utime.h>
in gstdio.h, just use a forward struct declaration.
* glib/glib.symbols: Add it.
svn path=/trunk/; revision=6960
2008-05-29 Tor Lillqvist <tml@novell.com>
* glib/gnulib/printf-args.c (printf_fetchargs): wint_t is short on
Windows, and gcc warns: "wint_t is promoted to int when passed
through ... (so you should pass int not wint_t to va_arg)." So do
that then.
svn path=/trunk/; revision=6956
2008-05-27 simon.zheng <simon.zheng@sun.com>
* configure.in: Fix#533369. Check whether memeber statvfs.f_basetype
available or not.
* gio/glocalfile.c: (g_local_file_query_filesystem_info):
Fix#533369. Make G_FILE_ATTRIBUTE_FILESYSTEM_TYPE work on Solaris.
svn path=/trunk/; revision=6939
2008-05-22 10:49:37 Tim Janik <timj@imendio.com>
* glib/gmacros.h: implement G_STMT_START and G_STMT_END with
do{}while(0), which is believed to be widely portable, fixes:
Bug 519026 - G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
svn path=/trunk/; revision=6922
2008-05-20 Behdad Esfahbod <behdad@gnome.org>
Bug 459905 – Bug in wcwidth data
Bug 534085 – g_unichar_iswide_cjk() has a totally wrong table
* glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
Regenrate wide and wide_cjk tables from Unicode 5.1.0 data directly.
Not using Markus Kuhn's tables anymore.
svn path=/trunk/; revision=6920
2008-05-20 14:31:18 Tim Janik <timj@imendio.com>
* reverted recent unapproved changes by Yair Hershkovitz, regarding:
Bug 503071 - Application direction changes to right to left even if theres no translation.
svn path=/trunk/; revision=6919
2008-05-20 Tor Lillqvist <tml@novell.com>
* configure.in: Don't need memory barriers when using a non-gcc
compiler on Windows either.
svn path=/trunk/; revision=6918
2008-05-19 Tor Lillqvist <tml@novell.com>
* glib/gdir.c: Include the dirent.h and wdirent.c from
../build/win32/dirent directly here when compiling with MSVC and
without HAVE_DIRENT_H.
svn path=/trunk/; revision=6915
2008-05-19 Tor Lillqvist <tml@novell.com>
* glib/Makefile.am: #define HELPER_CONSOLE in
gspawn-win32-helper-console.c
* glib/gspawn-win32-helper.c: Compile a main() instead of
WinMain() if HELPER_CONSOLE is defined.
svn path=/trunk/; revision=6909
2008-05-12 Jeffrey Stedfast <fejj@novell.com>
* glib/gchecksum.c (g_checksum_reset): New function to reset the
state of a GChecksum.
(g_checksum_new): Call g_checksum_reset() instead of duplicating
code.
svn path=/trunk/; revision=6903
2008-05-17 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c: Make debugging printout more compact and add
more information to it. No changes to actual functionality.
svn path=/trunk/; revision=6898
2008-05-17 Tor Lillqvist <tml@novell.com>
* glib/gmain.c: Improve debugging printouts. When
G_MAIN_POLL_DEBUG is defined, we check for an environment variable
of the same name to decide whether to print out debugging
information or not. G_MAIN_POLL_DEBUG is always defined on Windows
as there is more often a need to debug this stuff there. On Unix
the definition has to be uncommented (or done on the compile
command line).
svn path=/trunk/; revision=6897
2008-05-17 Tor Lillqvist <tml@novell.com>
* "build" is no longer include into GLib through
svn:externals. The relevant directories and files have been svn
add'ed to GLib (trunk) instead.
svn path=/trunk/; revision=6895
2008-05-17 Yair Hershkovitz <yairhr@gmail.com>
* glib/glib.symbols:
* glib/gi18n.h: Added g_disable_setlocale().
* glib/gi18n.c: Added g_disable_setlocale() API to disable setting
the locale in g_i18n_init(). Dont disable translations if textdomain
was not set before calling g_i18n_init(). Dont disable translations if
the locale is "C".
svn path=/trunk/; revision=6894
2008-05-12 Yair Hershkovitz <yairhr@gmail.com>
* glib/gi18n.c (g_i18n_init): Coding convention fix. Space between
a function name and its opening parenthesis.
svn path=/trunk/; revision=6885
2008-05-12 Tor Lillqvist <tml@novell.com>
Bug 530457 - G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
* glib/gutils.c (load_user_special_dirs): When running on Vista or
later, use SHGetKnownFolderPath() to get the FOLDERID_Downloads
folder for G_USER_DIRECTORY_DOWNLOAD, and FOLDERID_Public for
G_USER_DIRECTORY_PUBLIC_SHARE.
svn path=/trunk/; revision=6883
2008-05-11 Yair Hershkovitz <yairhr@gmail.com>
Bug 503071 - Application direction changes to right to left even if
theres no translation.
* glib/gi18n.c: g_i18n_init() for initializing the glib i18n,
checking if a translation is available for the calling app. wrappers for
gettext, dgettext and dpgettext to check first if the application
should be translated.
* glib/gi18n.h: symbol declaration for gettext wrappers.
* glib/gi18n-lib.h: include gi18n.h instead of libintl.h.
* glib/gstrfuncs.c: moved g_dpgettext() to glib/gi18n.c.
* glib/gutils.c: use g_dgettext() instead of dgettext().
* glib/glibintl.h: include gi18n.h.
* glib.symbols: added gettext wrappers.
* glib/Makefile.am: added gi18n.c.
svn path=/trunk/; revision=6882
2008-05-05 Michael Natterer <mitch@imendio.com>
* glib/glib.h: #define __GLIB_H_INSIDE__ around including
everything.
* glib/*.h: check for that define instead of __G_LIB_H__ if
G_DISABLE_SINGLE_INCLUDES is defined.
* glib/gdatasetprivate.h: #include <glib.h> instead of
<glib/gdataset.h>
svn path=/trunk/; revision=6875
2008-05-02 13:24:13 Tim Janik <timj@imendio.com>
* glib/gmain.c: renamed GMainDispatch.dispatching_sources to be more
descriptive and distinguishable within the source file.
svn path=/trunk/; revision=6874
2008-04-21 Tor Lillqvist <tml@novell.com>
Bug 528752 - Win32 build and SSL not working
This bug report against libsoup points out an issue with the use
of bitfields in the GIOChannel struct that should really be taken
care of here in GLib.
* configure.in: Add Autoconf variable GLIB_EXTRA_CFLAGS which will
contain the -mms-bitfields flag on Windows.
* glib-2.0.pc.in: Add it to Cflags.
svn path=/trunk/; revision=6868
2008-04-21 Tor Lillqvist <tml@novell.com>
* configure.in
* */Makefile.am: More work on enabling static building on
Windows. When building statically: Also define
GOBJECT_STATIC_COMPILATION in glibconfig.h so that also the
variables in gparamspecs.h get declared without any
dllimport/dllexport decorations. Don't install .def files which
obviously have no meaning for static libraries. Don't create MS
import libraries. Don't do any resource object files.
svn path=/trunk/; revision=6866
2008-04-17 Emmanuele Bassi <ebassi@gnome.org>
* glib/gchecksum.c:
(sha_byte_reverse): Use the macro GLib provides for byte-swapping
as it can be optimized.
(g_checksum_update): Fix a compiler warning.
svn path=/trunk/; revision=6861
2008-04-09 Federico Mena Quintero <federico@novell.com>
* glib/gbookmarkfile.c (bookmark_metadata_free): Don't leak
the apps_by_name hash table if the applications list is empty.
Signed-off-by: Federico Mena Quintero <federico@gnu.org>
svn path=/trunk/; revision=6846
2008-04-04 Tor Lillqvist <tml@novell.com>
* glibconfig.h.win32.in: Define GLIB_STATIC_COMPILATION here also,
if needed.
svn path=/trunk/; revision=6822
2008-04-04 Tor Lillqvist <tml@novell.com>
* configure.in: Make sure we don't build both shared and static at
the same time on Windows. Put a #define for
GLIB_STATIC_COMPILATION into glibconfig.h in the static case, so
that the use of variables from libglib gets the dllimport stuff in
the GLIB_VAR macro as defined in gtypes.h automatically
correct. This means that a shared and static build of GLib can't
be installed in the same prefix on Windows, which sucks a bit. But
with variables in the GLib API, there isn't much we can do
otherwise. The alternative would be to force the developer who
compiles against a statically built GLib to use
-DGLIB_STATIC_COMPILATION.
svn path=/trunk/; revision=6820
2008-04-03 Tor Lillqvist <tml@novell.com>
* configure.in: Don't enforce shared library build only on
Windows. It might well make sense to build static libraries in
some use cases.
* glib/gutils.c: Don't compile the DllMain if building libglib
statically. Also in that case don't return NULL from
_glib_get_installation_directory(), but return the installation
directory of the program's .exe file.
svn path=/trunk/; revision=6818
2008-04-03 Tor Lillqvist <tml@novell.com>
Bug 525972 - UCS-4 not in the new win_iconv implementation
* glib/win_iconv.c: Add UCS-4. Also add spelling of UCS-2 without
the hyphen.
svn path=/trunk/; revision=6816
2008-04-02 Tor Lillqvist <tml@novell.com>
Bug 524314 - g_convert() on Win32 implicitly converts full width
alphanumerics into half width
* glib/win_iconv.c: Update from Yukihiro Nakadaira. Use
WC_NO_BEST_FIT_CHARS flag for WideCharToMultiByte() unless the
//translit flag was suffixed to the codeset name.
* glib/gconvert.c: Include win_iconv.c earlier so that its
definition of WINVER before it includes <windows.h> is used.
svn path=/trunk/; revision=6808
2008-03-31 Tor Lillqvist <tml@novell.com>
* glib/gmain.c (g_poll): Improve fix for #525192 below: Use
SleepEx() so that the sleep is alertable. Thanks to John
Ehresman.
svn path=/trunk/; revision=6794
2008-03-31 Tor Lillqvist <tml@novell.com>
* glib/gwin32.c
(g_win32_get_package_installation_directory_of_module): Fix Cygwin
breakage. Patch by Lieven van der Heide.
svn path=/trunk/; revision=6790
2008-03-31 Tor Lillqvist <tml@novell.com>
Bug 525192 - 100% CPU if run main loop with no IO sources
* glib/gmain.c (g_poll) [Win32]: Patch by Neil Roberts.
svn path=/trunk/; revision=6787
2008-03-30 Matthias Clasen <mclasen@redhat.com>
* glib/glibintl.h:
* glib/gstrfuncs.c:
* glib/gutils.c: Simple fixes to help building GLib on
embedded systems without NLS. (#524350, Peter Kjellerstedt)
svn path=/trunk/; revision=6779
2008-03-22 Claudio Saavedra <csaavedra@gnome.org>
Bug 523877 – gbookmarkfile: avoid using g_string_append_printf() and
other optimizations
* glib/gbookmarkfile.c: (bookmark_metadata_dump),
(bookmark_item_dump), (g_bookmark_file_dump), (expand_exec_line):
Replace all calls to g_string_append_printf with g_strconcat () or
g_string_append () where appropriate, to reduce the file creation time.
Also, use g_string_sized_new () with an appropriate buffer size instead
of g_string_new (NULL), to reduce time spent in memory reallocation.
(#523877, Claudio Saavedra, Emmanuele Bassi)
svn path=/trunk/; revision=6752
2008-03-22 Emmanuele Bassi <ebassi@gnome.org>
Bug 518160 - replace two g_strdup_printf calls in GBookmarkFile
* glib/gbookmarkfile.c (is_element_full): Compare the fragments
instead of building two strings; this avoids two g_strdup_printf()
per namespaced element enountered. (#518160, Felix Riemann)
svn path=/trunk/; revision=6751
2008-03-20 Alexander Larsson <alexl@redhat.com>
* configure.in:
Final fixes for struct statfs.f_fstypename checks (OpenBSD). (#521045)
Patch from ephraim_owns@hotmail.com
svn path=/trunk/; revision=6746
2008-03-19 Tor Lillqvist <tml@novell.com>
Bug 523298 - win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
* glib/win_iconv.c: Fixes for code page 54936 (GB18030)
(mbtowc_flags): New function. Check if a code page is one of those
for which the dwFlags parameter to MultiByteToWideChar() must be
zero. Return 0 or MB_ERR_INVALID_CHARS.
(mbcs_mblen): New function for multi-byte (more than two bytes for
some characters) code pages. Only handles 54936 for now.
(make_csconv): Use it for 54936.
(kernel_mbtowc): Use mbtowc_flags().
svn path=/trunk/; revision=6741
* glib/gutils.h: Use "__attribute__ ((__gnu_inline__))" for inlining
if either __GNUC_STDC_INLINE__ or __GNUC_GNU_INLINE__ are defined. In
gcc version prior to 4.3 no correct C99-inline was implemented which
has semantic differences to GNU inline.
svn path=/trunk/; revision=6733
2008-03-16 Tor Lillqvist <tml@novell.com>
* configure.in: Don't bother defining Autoconf variables for
glib.def, gmodule.def, gobject.def and gthread.def when this can
be handled easily in */Makefile.am which are the only files that
use them. Remove also TESTGMODULE_EXP which isn't used at all.
* */Makefile.am: Corrsponding changes.
svn path=/trunk/; revision=6722
2008-03-14 Michael Natterer <mitch@imendio.com>
* glib/*.h: make it possible to disable single-file includes by
defining G_DISABLE_SINGLE_INCLUDES when building against GLib.
Approved by Tim Janik.
* glib/glib.h: include <glib/gslice.h>.
* glib/gi18n.h
* glib/gi18n-lib.h
* glib/gprintf.h: include <glib.h> so the above works when these
files are included without including <glib.h> first.
svn path=/trunk/; revision=6713
2008-03-14 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
(g_local_file_query_filesystem_info):
Use right define name for f_fstypename member check
2008-03-14 Alexander Larsson <alexl@redhat.com>
* configure.in:
Add required includes for f_fstypename member check.
svn path=/trunk/; revision=6703
* configure.in:
* glib/gthread.h: Prevent the compiler from warning about breaking
strict-aliasing rules when using gcc 4.3 and G_LOCK on C sources.
svn path=/trunk/; revision=6691
2008-03-12 Tor Lillqvist <tml@novell.com>
Bug 520914 - win_iconv doesn't support UCS-2
* glib/win_iconv.c: Make UCS-2 just an alias for
UTF-16. Technically this is wrong of course, but shouldn't matter
an awful lot in practice.
svn path=/trunk/; revision=6686
2008-03-11 Murray Cumming <murrayc@murrayc.com>
Bug 521591 – g_markup_parse_context_parse() creates GError message that
is invalid UTF8.
* glib/gmarkup.c (set_error): Make sure that the GError::message is
valid UTF-8 even if it is complaining about invalid UTF-8 in the
markup text, using _g_utf8_make_valid().
svn path=/trunk/; revision=6680
2008-03-07 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
(g_local_file_query_filesystem_info):
Use struct statfs.f_fstypename if availible (e.g. on OpenBSD)
Patch from Jasper Lievisse Adriaanse
svn path=/trunk/; revision=6638
2008-03-04 Alexander Larsson <alexl@redhat.com>
* gfile.c:
Remove deprecated symbols we kept for one release.
2008-03-04 Alexander Larsson <alexl@redhat.com>
* glib/gurifuncs.c:
Remove deprecated symbols we kept for one release.
svn path=/trunk/; revision=6621
2008-03-03 Matthias Clasen <mclasen@redhat.com>
* glib/gutils.h: Add a version of G_INLINE_FUNC for
__GNUC__ && __GNUC_STDC_INLINE__, patch by Jakub Jelinek
svn path=/trunk/; revision=6616
2008-03-03 Tor Lillqvist <tml@novell.com>
* glib/gspawn-win32.c (read_helper_report): Must set the GError
also in the unexpected EOF case.
(do_spawn_with_pipes): Must protect also new_argv[0].
svn path=/trunk/; revision=6612
2008-02-29 Tor Lillqvist <tml@novell.com>
* glib/win_iconv.c (name_to_codepage): Add some GNU libiconv
compatibility: Recognize "" and "char" as aliases for the current
locale's charset. (We use the system ANSI codepage as returned by
GetACP().) Recognize "wchar_t" as an alias for UTF-16LE.
svn path=/trunk/; revision=6604
2008-02-26 Tor Lillqvist <tml@novell.com>
* glib/gmain.c (g_poll): Further patch by Vlad Grecescu: Drop
the code path that called WaitMessage(), as WaitMessage()
doesn't offer any chance for APCs to run. Instead just use the
code path with MsgWaitForMultipleObjectsEx() even for the
wait-only-for-messages case. (#517484)
svn path=/trunk/; revision=6597
2008-02-25 Alexander Larsson <alexl@redhat.com>
* glib/glib.symbols:
* glib/gurifuncs.[ch]:
Rename g_uri_get_scheme to g_uri_parse_scheme.
Keep g_uri_get_scheme() symbol for this
unstable release to avoid breaking to many apps.
svn path=/trunk/; revision=6588
2008-02-25 Alexander Larsson <alexl@redhat.com>
* glib/gurifuncs.[ch]:
Rename g_uri_get_scheme to g_uri_parse_scheme.
Keep g_uri_get_scheme() symbol for this
unstable release to avoid breaking to many apps.
svn path=/trunk/; revision=6587
2008-02-24 Tor Lillqvist <tml@novell.com>
* glib/gutils.c (_glib_get_installation_directory): New internal function.
* glib/gspawn-win32.c: When spawning the helper process, use an
explicit full path. (#518292)
* glib/gspawn-win32.c
* glib/gspawn-win32-helper.c: Fix race condition when using the
helper process: When the helper process writes the handle of the
actual started user process to the parent process, it must be
duplicated in the parent process with DuplicateHandle() so that it
is a valid handle in that process. However, if the helper process
has happened to exit before the DuplicateHandle() call, the
duplication will fail. Thus we must synchronise the helper
process's exit. Use another pipe for this.
Take care not to inherit the writing end of this pipe to the
helper process. Also, in the helper process, take care not to
inherit either of the pipes used for communication with the parent
process to the started user process.
svn path=/trunk/; revision=6575
2008-02-24 Tor Lillqvist <tml@novell.com>
* glib/gmain.c (g_poll) [Win32]: Use alertable wait functions so
that I/O completion routines or user-mode Asynchronous Procedure
Calls can be run. (#517484, Vlad Grecescu)
svn path=/trunk/; revision=6571
2008-02-24 Tor Lillqvist <tml@novell.com>
* glib/gutils.h: Mention G_WIN32_DLLMAIN_FOR_DLL_NAME() will be
deprecated in the future.
* glib/gutils.c: Drop use of G_WIN32_DLLMAIN_FOR_DLL_NAME(). Use a
minimal DllMain() instead that just saves the DLL handle.
(g_win32_get_system_data_dirs_for_module, _glib_get_locale_dir)
(get_module_share_dir): Use
g_win32_get_package_installation_directory_of_module().
svn path=/trunk/; revision=6570
2008-02-24 Tor Lillqvist <tml@novell.com>
* glib/gwin32.c
(g_win32_get_package_installation_directory_of_module): New
function. Supersedes g_win32_get_package_installation_directory()
and g_win32_get_package_installation_directory().
It makes more sense to have the function for this functionality
take a HMODULE as parameter instead of DLL name. The typical use
scenario has been to have a DllMain() function that retrieves the
full pathname for the DLL in question, and saves just the basename
of that. Then later code passes that saved dll basename to
g_win32_get_package_installation_directory(), which retrieves the
corresponding DLL handle, and then retrieves up its full
pathname. (Which DLlMain() already had.) It is less convoluted to
have a DllMain() that just saves the DLL handle, and then when
needed call this function to get the corresponding installation
folder.
(get_package_directory_from_module): Use
g_win32_get_package_installation_directory_of_module().
(g_win32_get_package_installation_directory)
(g_win32_get_package_installation_subdirectory): Mention these
functions will be deprecated and recommend using
g_win32_get_package_installation_directory_of_module() instead.
* glib/gwin32.h: Declare
g_win32_get_package_installation_directory_of_module().
* glib/glib.symbols: Add it.
svn path=/trunk/; revision=6569
2008-02-23 Matthias Clasen <mclasen@redhat.com>
* tests/testglib.c: Don't test user directories for being
non-null. (#517084, Yevgen Muntyan)
svn path=/trunk/; revision=6562
2008-02-20 Tor Lillqvist <tml@novell.com>
* glib/gtestutils.c (g_test_trap_fork) [Win32]: Change the
g_error() to g_message() to avoid stopping on warnings. At least
now testglib runs to completion and the old tests in it get
exercised even if the newfangled ones don't.
(g_test_trap_assertions) [Win32]: Bypass on Windows.
svn path=/trunk/; revision=6542
2008-02-17 Hans Breuer <hans@breuer.org>
* glib/gutils.c : define CSIDL_MYPICTURES if not available
* gthread/gthread-win32.c : use G_STRFUNC instead of compiler
specific __FUNCTION__
svn path=/trunk/; revision=6526