Bug 509446 - portable blocking gio cancellation
* gcancellable.c (g_cancellable_make_pollfd): New method to make a
GPollFD for a cancellable (which is slightly more complicated on
Windows than Unix).
* gunixinputstream.c (g_unix_input_stream_read):
* gunixoutputstream.c (g_unix_output_stream_write): Use
g_cancellable_make_pollfd() and g_poll() rather than using poll()
directly.
* tests/unix-streams.c: test of GUnixInputStream,
GUnixOutputStream, and GCancellable.
svn path=/trunk/; revision=7553
* gdesktopappinfo.c (get_all_desktop_entries_for_mime_type): add a
cast to stop a gcc warning
* gfile.c (g_file_copy_attributes): add parens to stop a gcc
warning
svn path=/trunk/; revision=7550
* gcancellable.c (g_cancellable_class_init): Add a note to the
"cancelled" signal docs warning about thread-safety issues
(g_cancellable_cancel): Note that cancelling an asynchronous
operation takes effect asynchronously, not immediately.
svn path=/trunk/; revision=7541
2008-09-16 Michael Natterer <mitch@imendio.com>
* gcontenttype.c (g_content_type_guess): can't assign the return
value of g_strdupv() to an array. Fill the array manually with
const strings instead (it is never freed anyway). Fixes the
build. Also fixed indentation.
svn path=/trunk/; revision=7501
2008-09-16 Wouter Bolsterlee <wbolster@svn.gnome.org>
* gdesktopappinfo.c (g_desktop_app_info_new_from_keyfile):
Fix trivial typo to unbreak the build (there was a colon
instead of a semicolon at the end of a statement).
svn path=/trunk/; revision=7500
* gcontenttype.c (g_content_type_guess): Check whether there's a '/'
at the end of the filename, and declare it a directory.
Patch by Bastien Nocera
svn path=/trunk/; revision=7491
2008-09-14 Cosimo Cecchi <cosimoc@gnome.org>
Bug 551887 – Docs for g_desktop_app_info_new_from_filename ()
aren't clear.
* gdesktopappinfo.c: add a note in the docs clarifying what the
"filename" parameter really is.
svn path=/trunk/; revision=7481
2008-09-12 Tor Lillqvist <tml@novell.com>
* gwin32appinfo.c (g_win32_app_info_launch): Don't call
FormatMessage() etc here. Call g_win32_error_message() instead
which already does all that. Besides, the code was broken as it
called the default "A" version of FormatMessage() but still
thought it produced a wide string.
svn path=/trunk/; revision=7472
2008-09-02 Michael Natterer <mitch@imendio.com>
* *.h: big header formatting cleanup: indentation, vtable
formatting, consistent spacing in (* vfunc), trailing whitespace
removal. Formatting should be pretty consistent in all GIO headers
now.
svn path=/trunk/; revision=7433
2008-09-02 Michael Natterer <mitch@imendio.com>
* gbufferedoutputstream.h (struct _GBufferedOutputStreamClass):
fix parent_class member to be GFilterOutputStreamClass (not
GOutputStreamClass). Drop three pointers of padding, which is
exactly what GFilterOutputStreamClass adds to GOutputStreamClass,
so the class struct size stays the same.
svn path=/trunk/; revision=7427
2008-08-23 Tor Lillqvist <tml@novell.com>
Bug 548988 - g_file_replace fails on Windows when the target file
exists already
* glocalfileoutputstream.c (g_local_file_output_stream_close): On
Windows, close the file before renaming it (in case we have been
writing to a file with a temporary name).
(g_local_file_output_stream_close, handle_overwrite_open): Use
GLocalFileStat instead of plain struct stat, for passing to
_g_local_file_info_create_etag(). Thus also use _fstati64()
instead of plain fstat() on Windows.
svn path=/trunk/; revision=7388
2008-08-13 Tor Lillqvist <tml@novell.com>
* win32/gwinhttpvfs.c
* win32/gwinhttpvfs.h
* win32/gwinhttpfile.c
* win32/gwinhttpfileinputstream.c
* win32/gwinhttpfileoutputstream.c: Refactor some common code
snippets into helper functions. Check HTTP response status
codes. Implement g_winhttp_file_query_info(), looking at
Content-Length, Content-Type and Last-Modified.
* win32/winhttp.h: Add some symbolic constants that are not
publicly documented. Just a handful, so it should be OK to use
information from the Windows SDK's headers.
svn path=/trunk/; revision=7350
2008-08-13 Tor Lillqvist <tml@novell.com>
Bug 546582 - Callbacks from GFileMonitor present a GFile in the
wrong folder
* win32/gwin32directorymonitor.c
(g_win32_directory_monitor_callback): Patch by Erik van Pienbroek.
svn path=/trunk/; revision=7347
2008-08-13 Tor Lillqvist <tml@novell.com>
* win32/gwinhttpfileoutputstream.c
(g_winhttp_file_output_stream_write): Don't write the
Content-Length header ourselves, WinHttpSendRequest() takes care
of that when the dwTotalLength parameter is non-zero. Increment
offset by the number of actual bytes sent, although I wonder if
such a scenario is possible where less than requested would be
sent and accepted by the server without errors.
svn path=/trunk/; revision=7345
2008-08-13 Tor Lillqvist <tml@novell.com>
* win32/gwinhttpvfs.c
* win32/gwinhttpvfs.h
* win32/gwinhttpfile.c
* win32/gwinhttpfile.h
* win32/gwinhttpfileinputstream.c
* win32/gwinhttpfileinputstream.h
* win32/gwinhttpfileoutputstream.c
* win32/gwinhttpfileoutputstream.h: New files implementing
GWinHttpVfs and related classes, a GVfs for HTTP and HTTPS URIs on
Windows. The implementation uses the WinHttp API. Both reading and
writing are supported, i.e. GET and PUT requests. When writing,
each write call is done using a separate PUT request with a
Content-Range header. Requests for file URIs and plain pathnames
are forwarded to GLocalVfs.
* win32/winhttp.h: Reverse engineered <winhttp.h>, borrowed from
WINE. Used as there is no <winhttp.h> bundled with mingw, and
requiring people to download the Windows SDK just for this one
header is not reasonable.
* win32/Makefile.am: Add above files.
* giomodule.c: Call _g_winhttp_vfs_get_type() on Windows to set up
the plumbing for the above.
svn path=/trunk/; revision=7344
2008-08-11 Tor Lillqvist <tml@novell.com>
* Makefile.am: Put a list of the platform-dependent .la files in
the subdirectories in the platform_deps Make variable, and make
libgio-2.0.la depend on that, so that it gets relinked if one of
the dependent libraries has changed.
svn path=/trunk/; revision=7336
2008-08-11 Tor Lillqvist <tml@novell.com>
* Makefile.am (platform_libadd): Remove -lwininet which had been
added by mistake. We will probably eventually be using WinHTTP,
not the older WinInet anyway. (Actually I am working on it.)
svn path=/trunk/; revision=7335
2008-08-09 Loïc Minier <lool@dooz.org>
Bug 535124 – umask 002 not being applied for new directories, new
files get the correct umask
* gfile.c (g_file_make_directory)
(g_file_make_directory_with_parents): Document ownership and
permissions of newly created directories as being the default
ones of the process.
svn path=/trunk/; revision=7330
2008-08-08 Loïc Minier <lool@dooz.org>
Bug 535124 – umask 002 not being applied for new directories, new
files get the correct umask
* glocalfile.c: (g_local_file_make_directory): Use 0777 instead of
0755 as umask
svn path=/trunk/; revision=7323
2008-08-08 Tor Lillqvist <tml@novell.com>
* gwin32volumemonitor.c (get_connected_drives): Put questionable
code that didn't actually do anything inside #if 0, and add a
comment wondering what the code was supposed to do. This also gets
rid of a leftover debugging printout.
svn path=/trunk/; revision=7321
2008-08-04 Matthias Clasen <mclasen@redhat.com>
Bug 546017 – Don't copy attributes when copying a symlink
* gfile.c (g_file_copy_attributes): Specify
G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS in the call to
g_file_set_attributes_from_info. Patch by Christian Kellner
svn path=/trunk/; revision=7294
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-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-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-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-06 David Zeuthen <davidz@redhat.com>
* gio.symbols:
* gvolume.[ch]: Add new method g_volume_get_activation_root(). This
is needed for easily handling adoption of foreign volumes by
out-of-process volume monitors (#541793)
svn path=/trunk/; revision=7169
2008-07-06 David Zeuthen <davidz@redhat.com>
* gvolumemonitor.[ch]:
* gunionvolumemonitor.c: Export the eject-button signal on the
volume monitor class (#541794).
svn path=/trunk/; revision=7168
* gio.symbols:
* gdesktopappinfo.[hc]: Add a function to create a
GDesktopAppInfo from a GKeyFile. Proposed by Josselin Mouette.
svn path=/trunk/; revision=7143
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
* giomodule.c (_g_io_modules_ensure_loaded): Don't g_list_prepend
one list to another. Pointed out by Jan Arne Petersen
svn path=/trunk/; revision=7103
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
2008-06-17 Hans Breuer <hans@breuer.org>
* gwin32mount.[ch] gwin32volumemonitor.[ch] : bits and pieces from
gtk-2-12 and gunix*.[hc] to make the file chooser show drive letter
access again on win32, see bug #538127
* giomodule.c : ensure GWin32VolumeMonitor is registered
* glocaldireoctorymonitor.c : initial state on win32 is_mounted=TRUE
* Makefile.am makefile.msc : updated
svn path=/trunk/; revision=7055
2008-05-19 Hans Breuer <hans@breuer.org>
* glocalfileenumerator.c(_g_local_file_enumerator_new) : declaration
and initialization in one step avoids c99ism
svn path=/trunk/; revision=7052
2008-06-16 Tor Lillqvist <tml@novell.com>
Bug 538362 - Get Win32 icons back in the file chooser
* gcontenttype.c (g_content_type_get_icon): Look up the icon
corresponding to a file extension in the Registry. Patch by Hans
Breuer.
(get_registry_classes_key): Handle also REG_EXPAND_SZ type values.
2008-06-16 Tor Lillqvist <tml@novell.com>
Patches by Hans Breuer:
* glocalfile.c (is_xp_or_later): Handle compiling against older
SDK headers with missing VerifyVersionInfo(). Conditioned on
_MSC_VER, but should probably use some better test.
* glocalfile.c (g_local_file_query_filesystem_info): Don't test
uninitialised statfs_result variable on Win32.
svn path=/trunk/; revision=7049
2008-06-16 Michael Natterer <mitch@imendio.com>
* *.c: chain up unconditionally in finalize() and dispose(). Also
don't dereference these function pointers when calling them since
that has no meaning at all.
svn path=/trunk/; revision=7048
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-12 Yevgen Muntyan <muntyan@tamu.edu>
* tests/live-g-file.c (sample_struct):
Use less fancy unicode filenames, so the test doesn't fail
on Mac OS X (#531476).
svn path=/trunk/; revision=7035
folder
* glocalfileinfo.c (_g_local_file_info_get): Return user-desktop
as icon for the desktop directory, also make user-home and
user-desktop the preferred icons.
svn path=/trunk/; revision=6992
2008-06-10 Michael Natterer <mitch@imendio.com>
* gcontenttype.c (g_content_type_get_icon): fix SEGV by not using
uninitialized memory as array index.
svn path=/trunk/; revision=6981
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-17 Matthias Clasen <mclasen@redhat.com>
* gcontenttype.h:
* gcontenttype.c: (g_content_type_from_mime_type):
New function to create a content type from a mime type. (#527175,
Milan Crha)
svn path=/trunk/; revision=6906
2008-05-16 Tor Lillqvist <tml@novell.com>
* win32/gwin32directorymonitor.c: #define _WIN32_WINNT 0x0400 to
get declaration of ReadDirectoryChangesW() from Platform SDK headers.
svn path=/trunk/; revision=6893
2008-05-13 Bastien Nocera <hadess@hadess.net>
* gfile.c (has_valid_scheme): A URI scheme must start with a
letter, even if later more characters are allowed (#532852)
svn path=/trunk/; revision=6887
2008-05-05 Michael Natterer <mitch@imendio.com>
* Makefile.am. build with G_DISABLE_SINGLE_INCLUDES to prevent
code from being checked in that breaks the build of applications
which use G_DISABLE_SINGLE_INCLUDES.
* makegioalias.pl: make the alias file include "glib.h" instead of
"glibconfig.h".
* gio.symbols: whitespace change to force regeneration of the
alias file after above script change.
* gfileinfo.h: remove inlcusion of <glib/gfileutils.h>.
* gfilenamecompleter.c: remove inclusion of "gurifuncs.h".
* gioerror.h: #include <glib.h> instead of <glib/gerror.h>.
* glocalfileinfo.c: remove inclusion of <glib/gchecksum>.
svn path=/trunk/; revision=6879
2008-04-28 David Zeuthen <davidz@redhat.com>
* gunixmounts.c (g_unix_mount_guess_should_display): Avoid
displaying mounts in a subdirectory not accessible to the
user (#526320).
svn path=/trunk/; revision=6872
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-16 Matthias Clasen <mclasen@redhat.com>
* xdgmime/xdgmime.c: Rework the timestamp checking code
to protect against duplicate directories in XDG_DATA_DIRS.
Fixes fd.o bug 12513, reported by Joe Shaw.
svn path=/trunk/; revision=6859
2008-04-16 Matthias Clasen <mclasen@redhat.com>
Partically revert the last commit after realizing that
xdg_mime_media_type_equal doesn't have to init at all.
* xdgmime/xdgmime.h:
* xdgmime/xdgmime.c: Get rid of _xdg_mime_media_type_equal
* xdgmime/xdgmimecache.c: Use xdg_mime_media_type_equal
svn path=/trunk/; revision=6857
2008-04-16 Matthias Clasen <mclasen@redhat.com>
Avoid possible memory corruption in xdgmime, fd.o bug 12512,
reported by Joe Shaw and Federico Mena Quintero.
* xdgmime/xdgmime.c(_xdg_mime_media_type_equal): Implement.
(xdg_mime_media_type_equal): Turn into a wrapper around the
_-prefixed version.
* xdgmime/xdgmimecache.c: Use the _-prefixed versions of comparison
functions throughout.
svn path=/trunk/; revision=6854
2008-04-16 Michael Meeks <michael.meeks@novell.com>
* gdesktopappinfo.c (g_desktop_app_info_new_from_filename):
tolerate an empty TryExec= line without failing; nautilus used
to create launchers with these in previous versions. Fixes#528433
svn path=/trunk/; revision=6853
2008-04-04 Sebastien Bacher <seb128@ubuntu.com>
* gunixmounts.c: (g_unix_mount_guess_should_display):
Don't list the user directory as a mount, fix potential issue
when other users have a similar naming and don't special case the
gvfs mounts there since that's not required (#525866)
svn path=/trunk/; revision=6825
2008-03-31 Alexander Larsson <alexl@redhat.com>
* glocalfileenumerator.c:
Read readdir() info chunks (of 1000) and sort
the chunks by inode before stat:ing.
This is a 20% performance increase in testing
gvfs-ls on /usr/bin with cold cache.
svn path=/trunk/; revision=6796
2008-03-30 Matthias Clasen <mclasen@redhat.com>
* gio.symbols:
* gfile.c:
* gfile.h: Add g_file_query_file_type convenience function
to query the type of a file. (#520715, Mikkel Kamstrup Erlandsen)
svn path=/trunk/; revision=6784
2008-03-28 Alexander Larsson <alexl@redhat.com>
* glocalfile.c (g_local_file_move):
Reuse old string instead of adding new one.
svn path=/trunk/; revision=6762
2008-03-27 Alexander Larsson <alexl@redhat.com>
* glocalfile.c (g_local_file_move):
Return G_IO_ERROR_IS_DIRECTORY, not G_IO_ERROR_WOULD_MERGE when moving
file over directory. This is according to the docs and what the move via
copy+remove fallback does.
svn path=/trunk/; revision=6758
2008-03-19 Alexander Larsson <alexl@redhat.com>
* gfile.c:
(copy_stream_with_progress):
Bump block side for copy to 64k to minimize
overhead for low latency links. (#523015)
svn path=/trunk/; revision=6735
2008-03-16 Tor Lillqvist <tml@novell.com>
* Makefile.am (libgio_2_0_la_DEPENDENCIES): Make libgio-2.0.la
depend on gio.def on Windows.
svn path=/trunk/; revision=6721
2008-03-14 Alexander Larsson <alexl@redhat.com>
* fam/fam-helper.[ch]:
* fam/fam-module.c:
Shut down fam (including removing fam GSource) when
module is unloaded (#521513)
Patch from Joe Marcus Clarke
svn path=/trunk/; revision=6706
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
2008-03-13 Tor Lillqvist <tml@novell.com>
* Makefile.am: Actually use the gio.def file when linking the
library on Windows. Produce .lib library for Microsoft's toolchain
when possible. Install the .lib and .def file like for the other
libraries of GLib.
svn path=/trunk/; revision=6700
2008-03-13 Tomas Bzatek <tbzatek@redhat.com>
* tests/live-g-file.c:
Include live-g-file in standard set of tests, making a temporary
directory in source structure.
Clean target directory before the tests (write mode only)
svn path=/trunk/; revision=6699
2008-03-12 Tor Lillqvist <tml@novell.com>
* glocalfileinfo.h: Introduce a macro GLocalFileStat that is the
normal struct stat on Unix but struct _stati64 on Windows to have
access to 64-bit file size information. Use that instead of struct
stat in the functions declared here in this private header.
* glocalfileinfo.c: Corresponding changes. Move some G_OS_WIN32,
S_ISLNK and HAVE_UTIMES ifdefs and add some more to avoid compiler
warnings about unused functions and variables. Don't set
meaningless attributes like inode numbers on Windows.
svn path=/trunk/; revision=6697
2008-03-11 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
* glocalfileinfo.[ch]:
Correctly implement can_trash by actually
looking for a trash dir, not just assuming
one exists.
svn path=/trunk/; revision=6679
2008-03-08 Tor Lillqvist <tml@novell.com>
* glocalfile.c: Define FILE_READ_ONLY_VOLUME if it is missing from
winnt.h. (#521145)
svn path=/trunk/; revision=6643
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-06 Tor Lillqvist <tml@novell.com>
* gfileinfo.h: Correct milliseconds to microseconds in the doc
comments for the *_USEC attributes.
svn path=/trunk/; revision=6634
2008-03-05 Alexander Larsson <alexl@redhat.com>
* gfilemonitor.c:
Make cancellation threadsafe (i.e.
guarantee its only done once, and always
done)
* glocaldirectorymonitor.c:
Make sure we the monitor lives while the
mounts_changed callback is being called (#520484)
svn path=/trunk/; revision=6630
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 Alexander Larsson <alexl@redhat.com>
* gunionvolumemonitor.c:
* gvolumemonitor.h:
Fix the adopt_orphan_mount vfunc to take a
volume_monitor reference in an ABI compat way.
This change is not API compat, but the added
arg is not used in the only user of this vfunc, so
all we get is a harmless warning in gvfs (#520169)
svn path=/trunk/; revision=6618
2008-02-29 Alexander Larsson <alexl@redhat.com>
* glocalfileinfo.c:
(get_content_type):
Make sure empty files get text/plain type (#518720)
svn path=/trunk/; revision=6605
2008-02-25 Alexander Larsson <alexl@redhat.com>
* gfile.c:
Reintroduce g_file_contains_file, keep around for one
unstable release cycle to avoid crashing to many apps.
Make sure to delete after release.
svn path=/trunk/; revision=6586
2008-02-25 Alexander Larsson <alexl@redhat.com>
* gfilemonitor.c:
Emit actual change signals in an idle handler.
This avoids reentrance and locking problems in
the file notification backends.
svn path=/trunk/; revision=6584
2008-02-25 Alexander Larsson <alexl@redhat.com>
* gunixmounts.c:
(g_unix_mount_guess_should_display):
Remove type guessing, instead just display
mounts in /media and in ~/.
svn path=/trunk/; revision=6582
2008-02-25 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
Implement trashing and filesystem::readonly for win32 (#517235)
Patch from Yevgen Muntyan
svn path=/trunk/; revision=6578
2008-02-22 Alexander Larsson <alexl@redhat.com>
* gcontenttype.c (g_content_type_get_icon):
Look at old-style gnome mime icon names too, as many
have not moved to the new style.
svn path=/trunk/; revision=6557
2008-02-21 David Zeuthen <davidz@redhat.com>
* glocalfileinfo.c: (_g_local_file_info_get):
* gcontenttype.c:
(g_content_type_get_icon): Implement this function by
moving bits from glocalfileinfo.c
(g_content_type_get_description): Unalias before getting
description (#517687)
* gfile.c: (g_file_class_init),
(g_file_query_filesystem_info_async),
(g_file_query_filesystem_info_finish),
(query_filesystem_info_data_free),
(query_filesystem_info_async_thread),
(g_file_real_query_filesystem_info_async),
(g_file_real_query_filesystem_info_finish):
* gfile.h: Implement async version of
g_file_query_filesystem_info()
* gfileinfo.h: Add new attributes for filesystem::use-preview
* gio.symbols: Update
* gthemedicon.c: (g_themed_icon_append_name):
* gthemedicon.h: Add new new convenience function.
* gunionvolumemonitor.c: (g_union_volume_monitor_dispose),
(get_mounts), (get_volumes), (get_connected_drives),
(get_volume_for_uuid), (get_mount_for_uuid),
(g_union_volume_monitor_init), (populate_union_monitor),
(g_volume_monitor_get), (_g_mount_get_for_mount_path),
(g_volume_monitor_adopt_orphan_mount):
* gvolumemonitor.c:
* gvolumemonitor.h: Use recursive locks so it's safe for volume
monitor implementations to call into the main volume monitor. Also
separate object initialization and volume monitor initialization
such that non-native volume monitors can properly adopt their
mounts away.
svn path=/trunk/; revision=6550
2008-02-21 Alexander Larsson <alexl@redhat.com>
* gfile.[ch]:
* gio.symbols:
Add new g_file_has_prefix that does the same as g_file_contains_file.
Deprecate g_file_contains_file and add a macro that converts
it to g_file_has_prefix.
The reason for this change is that the contains_file() name seems to
imply that this does more work than what it does, but its really only
a name match (from #517086)
* gdummyfile.c:
* glocalfile.c:
* tests/g-file.c:
Update to match the above change.
svn path=/trunk/; revision=6546
2008-02-20 Benjamin Otte <otte@gnome.org>
* gfile.c: (g_file_mount_mountable), (g_file_unmount_mountable),
(g_file_eject_mountable):
even more cases of not returning in error path
svn path=/trunk/; revision=6545
2008-02-18 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
* glocalfileinfo.c:
* glocalfileoutputstream.c:
Use g_unlink/g_rename instead of unlink/rename;
do not pass raw filenames to g_set_error. (#517239)
Patch from Yevgen Muntyan.
svn path=/trunk/; revision=6533
2008-02-18 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
* glocalfileoutputstream.c:
Open files with O_BINARY on windows. (#517140)
svn path=/trunk/; revision=6531
2008-02-14 Alexander Larsson <alexl@redhat.com>
* glocalfileoutputstream.c:
Correctly check for HAVE_FCHMOD and HAVE_FCHOWN
svn path=/trunk/; revision=6518
2008-02-14 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
Copy permissions with file on copy (#514084)
This is what cp does and makes sure e.g. the
exec permissions are kept.
Its kinda weird in that it keeps the permission bits
the same while the uid and gid are different. However
the new uid is the user so its not a security issue,
and I've heard no complaints about cp on this issue.
svn path=/trunk/; revision=6514
2008-02-11 Alexander Larsson <alexl@redhat.com>
* gfile.[ch]:
* gmount.[ch]:
* gvolume.[ch]:
Added GMountMountFlags enum and added a flags
argument to all mount calls.
This is an API/ABI change for future extensibility,
as I think we will need at least an
inhibit-autorun flag (the panel needs this).
There are no flags defined yet though.
svn path=/trunk/; revision=6497
2008-02-11 Alexander Larsson <alexl@redhat.com>
* gfileinfo.h:
Added new standard::description attribute.
Requested by Vincent, and useful for both
panel and nautilus
svn path=/trunk/; revision=6496
2008-02-09 Matthias Clasen <mclasen@redhat.com>
* gunixmounts.c: Consistently use getmntent_r() and fall
back to getmntent(). (#515492)
svn path=/trunk/; revision=6490
2008-02-06 Behdad Esfahbod <behdad@gnome.org>
* pltcheck.sh: Skip g_bit_*(). Inline functions may end up with
a local plt if the compiler doesn't support what we want. Bug #514702
svn path=/trunk/; revision=6469
2008-02-06 Tomas Bzatek <tbzatek@redhat.com>
* tests/Makefile.am:
* tests/live-g-file.c:
* tests/live-g-file.txt:
New GIO testing module working over real data
svn path=/trunk/; revision=6465
2008-02-06 Tomas Bzatek <tbzatek@redhat.com>
* glocalfileoutputstream.c (g_local_file_output_stream_close):
Fallback to rename() if link() is not available
(when no support on target filesystem)
svn path=/trunk/; revision=6464
2008-02-06 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c:
Update to use both mimeapps.list and
defaults.list as discussed on xdg list.
svn path=/trunk/; revision=6461
2008-02-06 Benjamin Otte <otte@gnome.org>
* gasyncresult.c:
* gfilenamecompleter.c:
Fix some typos in the documentation.
svn path=/trunk/; revision=6460
2008-02-06 Alexander Larsson <alexl@redhat.com>
* glocalfile.c (g_local_file_trash):
Don't succeed with trash if newly created
trash dir has the wrong owner. (#514696)
svn path=/trunk/; revision=6459
2008-02-05 Alexander Larsson <alexl@redhat.com>
* glocalfile.c (g_local_file_move):
Don't spew warnings when destination is not
a GLocalFile.
svn path=/trunk/; revision=6451
2008-02-02 Jonathon Jongsma <jjongsma@gnome.org>
* gio/gbufferedoutputstream.c:
* gio/gbufferedoutputstream.h: modify the new_sized() constructor to take a
gsize param instead of guint to match the GBufferedInputStream constructor.
svn path=/trunk/; revision=6448
2008-02-01 Michael Natterer <mitch@imendio.com>
* gcontenttype.c (_g_unix_content_type_get_parents): assign the
return value of xdg_mime_list_mime_parents() to a variable of the
correct type.
svn path=/trunk/; revision=6441
2008-02-01 Alexander Larsson <alexl@redhat.com>
* gappinfo.c (g_app_info_launch_uris):
Actually call the launch_uris method, not
launch.
2008-02-01 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c (g_desktop_app_info_equal):
Ensure appinfos with no id but same pointer value
compare equal
svn path=/trunk/; revision=6440
2008-01-30 Alexander Larsson <alexl@redhat.com>
* gappinfo.c:
Add doc comment about uris vs GFiles to
g_app_info_launch()
* gdesktopappinfo.c:
Ensure uris passed to g_app_info_launch_uris()
are not roundtriped through GFile (as that
may be slightly destructive for e.g. mailto: links)
svn path=/trunk/; revision=6424
2008-01-29 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c:
* gdesktopappinfo.h:
giomodule-priv.h include moved to .c file.
svn path=/trunk/; revision=6416
2008-01-29 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c:
Lazily create the desktop files for appinfos created
by g_app_info_create_from_commandline() when needed
for mime associations. This allows run-time use
of GAppInfo object without creating unnecessary
files on disk.
svn path=/trunk/; revision=6412
2008-01-29 Alexander Larsson <alexl@redhat.com>
* gfile.[ch]:
Add g_file_query_default_handler utility to easily look up
the GAppInfo that handles a file.
* gdesktopappinfo.[ch]:
* giomodule.c:
Set up an extension point for g_app_info_get_default_for_uri_scheme()
* gvfs.c:
Remove unused function
svn path=/trunk/; revision=6409
2008-01-29 Alexander Larsson <alexl@redhat.com>
* gfileenumerator.c:
Mention need to free returned value in
g_file_enumerator_next_files_finish docs.
Fix leak if g_file_enumerator_next_files_finish()
not called.
svn path=/trunk/; revision=6408
2008-01-29 Alexander Larsson <alexl@redhat.com>
* gcontenttype.c:
(_g_unix_content_type_get_parents):
Use list_parents, not get_parents from xdgmime, because
the later doesn't use the cache.
* xdgmime/xdgmimecache.c:
(_xdg_mime_cache_list_mime_parents):
Don't list the same type as parent multiple times.
svn path=/trunk/; revision=6407
2008-01-28 Alexander Larsson <alexl@redhat.com>
* glocalvfs.c:
Register local vfs with prio 0.
* gvfs.h:
Remove old name and prio class members
svn path=/trunk/; revision=6401
2008-01-27 Murray Cumming <murrayc@murrayc.com>
* gio/gfile.c: (g_file_replace_contents),
(g_file_replace_contents_finish): Document that the new_etags output
gchar* should be freed.
svn path=/trunk/; revision=6383
2008-01-25 Matthias Clasen <mclasen@redhat.com>
* gioscheduler.h: Make GIOSchedulerJobFunc return boolean
* gioscheduler.c: Keep calling io jobs until they return FALSE;
this allows big jobs to be executed in chunks, instead of blocking
the main loop for a long time.
* gsimpleasyncresult.c:
* giofile.c: Adapt callers.
svn path=/trunk/; revision=6375
2008-01-25 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c:
Implement changes discussed on xdg list.
Now we can add supported mimetypes by just using defaults.list
We can also remove associations in defaults.list.
svn path=/trunk/; revision=6374
2008-01-25 Alexander Larsson <alexl@redhat.com>
* gdesktopappinfo.c:
Don't make local copy of desktop file
for mimetype changes if the file already
supports the new mimetype.
svn path=/trunk/; revision=6372
2008-01-24 Alexander Larsson <alexl@redhat.com>
* gfile.[ch]:
* gfile.h:
* gio.symbols:
Add g_file_copy_async() (#511580)
Based on patch from Carlos Garcia Campos
svn path=/trunk/; revision=6363
2008-01-22 Alexander Larsson <alexl@redhat.com>
* glocalfile.c:
(canonicalize_filename):
Canonicalize paths that start with more than
two slashes.
* tests/g-file.c:
(compare_two_files):
(test_g_file_new_for_path):
Test the above
svn path=/trunk/; revision=6353
2008-01-21 Matthias Clasen <mclasen@redhat.com>
* glocal*.c:
* gvolumemanager.c: Whitespace cleanups.
* glocalfileoutputsteam.c (_g_local_file_output_stream_create):
Use the right mode when creating the file.
svn path=/trunk/; revision=6341
2008-01-21 Alexander Larsson <alexl@redhat.com>
* inotify/Makefile.am:
* inotify/inotify-helper.c:
* inotify/inotify-kernel.c:
* inotify/inotify-path.c:
* inotify/local_inotify.h: Removed.
* inotify/local_inotify_syscalls.h: Removed.
Removed the included copies of the inotify
headers. We now only use the <sys/inotify.h>
header which exists on modern systems.
This fixes problems on ARM and SH5 (#510448)
but is also generally much cleaner and future
safe. For instance, if other OSes add support
for inotify it should "just work".
svn path=/trunk/; revision=6338
2008-01-18 Murray Cumming <murrayc@murrayc.com>
* gappinfo.c:
* gcancellable.c:
* gfile.c: Fixed some minor typos in the
documentation.
svn path=/trunk/; revision=6331
2008-01-17 Alexander Larsson <alexl@redhat.com>
* gfile.h:
Add the async find_enclosing_mount version
to the header file too.
svn path=/trunk/; revision=6326
2008-01-17 Alexander Larsson <alexl@redhat.com>
* gfile.c:
Add async version of find_enclosing_mount
with default implementation.
svn path=/trunk/; revision=6325
2008-01-17 Alexander Larsson <alexl@redhat.com>
* gfile.c:
(g_file_copy):
(g_file_move):
Allow calls to implementation of copy and write
even if the type of the file implementations is
different. This can be used to implement native
upload and download calls in a vfs.
* glocalfile.c:
(g_local_file_move):
Protect against the case where move is called
with one file not being local.
Make sure we call the progress callback once
in the native move operation so that the caller
knows how many bytes were copied.
svn path=/trunk/; revision=6324
2008-01-15 Murray Cumming <murrayc@murrayc.com>
* gdrive.c:
* gfile.c:
* gmount.c:
* gvolume.c: For async functions that have no non-async
version, document that the GAsyncReadyCallback may be NULL.
Bug #509626.
svn path=/trunk/; revision=6318
2008-01-14 Alexander Larsson <alexl@redhat.com>
* gfile.c (g_file_monitor_file):
Don't set error here, since we fallback to polling monitor.
svn path=/trunk/; revision=6307
2008-01-10 Murray Cumming <murrayc@murrayc.com>
* gfileinfo.c: GFileInfo description: Mention
how to actually set attributes in a GFile and how to discover
which attributes are settable. Bug #508378.
svn path=/trunk/; revision=6293
2008-01-09 Murray Cumming <murrayc@murrayc.com>
* gfile.c: *_async() functions: Several small corrections
to the documentation, mostly correcting copy/paste errors
and improving some sentences.
svn path=/trunk/; revision=6287
2008-01-09 Alexander Larsson <alexl@redhat.com>
* gio.symbols:
* gunixmount.c:
* gunixmounts.[ch]:
Add g_unix_mount_guess_should_display and use
for unix volume monitor backend.
This means we more or less show what the
gnome-vfs backend did.
Based on patch from Padraig O'Briain
svn path=/trunk/; revision=6285
2008-01-09 Alexander Larsson <alexl@redhat.com>
* gio-marshal.list:
* gmountoperation.[ch]:
Change the API a bit so that unhandled methods
get reported via the reply, rather than by
the signal emission return value. This is because
some handlers can't know this immediately without
doing I/O, and this is an async operation that
should not block.
svn path=/trunk/; revision=6282
2008-01-07 Alexander Larsson <alexl@redhat.com>
* Makefile.am:
Build test subdir after .
Remove gdirectorymonitor.[ch]
* gdirectorymonitor.[ch]:
* gfilemonitor.c:
* gfile.[ch]:
* gio.h:
Remove GDirectoryMonitor and make
GFileMonitor the baseclass for both file and
directory monitors. Lift the more generic
rate limiting code from GDirectoryMonitor
into GFileMonitor.
* fam/fam-helper.c:
* fam/gfamdirectorymonitor.[ch]:
* inotify/ginotifydirectorymonitor.[ch]:
* inotify/inotify-helper.c:
* glocaldirectorymonitor.[ch]:
* glocalfile.c:
* gvolumemonitor.c:
Update for the removed GDirectoryMonitor.
* gmemoryoutputstream.c:
Remove ununsed variable
svn path=/trunk/; revision=6262
2008-01-07 Alexander Larsson <alexl@redhat.com>
* gmemoryinputstream.c:
Translate error strings
* gio.symbols:
* gmemoryoutputstream.[ch]:
New implementation that avoids using GByteArray
in implementation and API. (#506377)
svn path=/trunk/; revision=6260
2008-01-04 Alexander Larsson <alexl@redhat.com>
* gio-marshal.list:
* gmountoperation.c:
Use the right type (uint) for the ask_password signal.
svn path=/trunk/; revision=6244
2008-01-04 Alexander Larsson <alexl@redhat.com>
* gappinfo.[ch]:
* gwin32appinfo.c:
* gio.symbols:
Add g_app_info_supports_files()
Remove desktop arg from g_app_info_should_show().
* gdesktopappinfo.[ch]:
Implement g_app_info_supports_files() and new should_show()
Add g_desktop_app_info_set_desktop_env() to set the desktop
for should_show(). (This will be set by gtk+ later)
svn path=/trunk/; revision=6242
2008-01-04 Alexander Larsson <alexl@redhat.com>
* gio.symbols:
* gmemoryinputstream.[ch]:
Improve API so that you can use multile chunks
of memory and custom destroy functions. (#506374)
svn path=/trunk/; revision=6241
2008-01-03 Alexander Larsson <alexl@redhat.com>
* gfileinfo.c:
Handle NULL attribute matchers safely, as we return this
for empty attribute matcher strings.
svn path=/trunk/; revision=6238
2008-01-03 Alexander Larsson <alexl@redhat.com>
* gunixmounts.c (g_unix_is_mount_path_system_internal):
Add /usr/local to list of internal mountpoints
svn path=/trunk/; revision=6237
2008-01-03 Alexander Larsson <alexl@redhat.com>
* fam/Makefile.am:
Link to libglib and libgobject directly (#504879)
Patch from Sebastien Bacher
svn path=/trunk/; revision=6234
2008-01-02 Alvaro Lopez Ortega <alvaro@sun.com>
* gio/gunixmount.c (g_unix_mount_unmount, g_unix_mount_eject):
These void functions were trying to return a value. It was causing
the compilation to fail.
svn path=/trunk/; revision=6232
2008-01-01 Wouter Bolsterlee <wbolster@svn.gnome.org>
* gfile.c: Expanded the g_file_new_for_commandline_arg
description a bit, based on the code and the docs of the
other g_file_new_for_* functions.
svn path=/trunk/; revision=6229
* gcontenttype.c: Describe memory management for return value of
g_content_types_get_registered(). Missing piece from #505815.
* gdrive.c, gmount.c, gvolumemonitor.c: Add more description to
GVolume, GDrive, GMounts, which hopefully gives the user less
confusions when using this API. Following explainations from
Alexander Larsson on gtk-devel-list.
svn path=/trunk/; revision=6222
2007-12-30 Matthias Clasen <mclasen@redhat.com>
* gdesktopfileinfo.c (g_app_info_get_all): Don't include NULLs
in the list of returned app infos.
svn path=/trunk/; revision=6218
2007-12-25 Paolo Borelli <pborelli@katamail.com>
* glocalfileinfo.c (set_info_from_stat): fix typo in the ifdef
used to detect statbuf->st_blocks. (#505042)
svn path=/trunk/; revision=6202