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