2008-08-03 Tor Lillqvist <tml@novell.com>
* win32/gwin32directorymonitor.c
(g_win32_directory_monitor_callback): Make prototype match
LPOVERLAPPED_COMPLETION_ROUTINE to avoid warning. Cast
LPOVERLAPPED parameter to local GWin32DirectoryMonitorPrivate
pointer.
(g_win32_directory_monitor_constructor):
GLocalDirectoryMonitor::dirname is in UTF-8 like all other file
names in the GLib API on Windows, so convert to UTF-16 and open
with CreateFileW().
svn path=/trunk/; revision=7290
2008-08-03 Tor Lillqvist <tml@novell.com>
Bug 541036 - Gnumeric crashes when trying to open Desktop or
user's folder under Windows
* win32/gwin32directorymonitor.c
(g_win32_directory_monitor_constructor): Ignore error from
CreateFile() when opening directory. Instead of asserting, just
store INVALID_HANDLE_VALUE then in
GWin32DirectoryMonitorPrivate::hDirectory. Also ignore error from
ReadDirectoryChangesW().
(g_win32_directory_monitor_cancel): Don't attempt to close
directory handle if it is INVALID_HANDLE_VALUE.
svn path=/trunk/; revision=7289
2008-08-02 Tor Lillqvist <tml@novell.com>
Bug 545954 - 64-bit issue in dirent
* win32/dirent/dirent.h: Use __int64 for the dd_handle on 64-bit
Windows. (Would use intptr_t, but that is not available before
MSVS8, and we want to keep this compilable also with MSVS6 and 7,
I think.) Thanks to Richard Hult.
svn path=/trunk/; revision=7286
2008-07-30 Matthias Clasen <mclasen@redhat.com>
Bug 545457 – gdmsetup crashed with SIGSEGV in
g_unix_mount_guess_should_display()
* gunixvolumemonitor.c (get_mount_for_mount_path): Don't
crash if no mount is found.
svn path=/trunk/; revision=7274
2008-07-30 Tor Lillqvist <tml@novell.com>
Bug 545485 - Implicit declaration of utime()
* glib/gstdio.c: Include <utime.h> on POSIX.
svn path=/trunk/; revision=7273
2008-07-28 Tor Lillqvist <tml@novell.com>
* configure.in: Output to glibconfig.h typedefs for gintptr as the
signed integer type that can hold a pointer, and guintptr as the
corresponding unsigned type. These types are portable equivalents
to intptr_t and uintptr_t which are not available in all
compilers.
For all current platforms, they will presumably end up as the same
types as gssize and gsize, but in theory size_t can be smaller
than intptr_t. Also, the intended use case for gintptr and
guintptr is different from that of gssize and gsize. As the name
indicates, gintptr is for when one wants an integer type that can
hold a pointer, and gsize is for when one wants an integer type
that can hold the value of the sizeof operator.
svn path=/trunk/; revision=7272
2008-07-28 Matthias Clasen <mclasen@redhat.com>
Bug 545157 – wrong/no list of "open with" applications for .cc and
.cpp files
* gdesktopappinfo.c (get_all_desktop_entries_for_mime_type):
Collect all ancestors, not just direct parents. Pointed
out by Bastien Nocera
svn path=/trunk/; revision=7268
2008-07-28 Matthias Clasen <mclasen@redhat.com>
* gemblemedicon.[hc]: Add a GIcon implementation that can
add an emblem to another icon.
* gio.h:
* Makefile.am:
* gio.symbols: Glue
* gloadableicon.c:
* gfileicon.c: Small documenatation additions.
svn path=/trunk/; revision=7263
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>
* gmodule.symbols: New file.
* gmodule.c: Bypass the Windows ABI compatibility symbols on
64-bit Windows. Thus no need to keep the file name in system
codepage around on 64-bit Windows either.
* Makefile.am: Produce gmodule.def from gmodule.symbols. Dist
gmodule.symbols instead of gmodule.def.
* gmodule.def: Drop from SVN.
svn path=/trunk/; revision=7259
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>
* gtype.h
* gtype.c: Revert my change from 2008-07-24. No G_TYPE_FORMAT is
needed. Just use G_GSIZE_FORMAT always when printing GType values.
svn path=/trunk/; revision=7256
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>
* gtype.h: Define G_TYPE_FORMAT as the printf format for a GType
value. Either G_GSIZE_FORMAT or "lu".
* gtype.c: Use it instead of the C99 zu.
svn path=/trunk/; revision=7250
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