Matthias Clasen [Mon, 6 Jul 2009 02:24:14 +0000 (22:24 -0400)]
Ignore gfileinfo-priv.h
David Zeuthen [Mon, 6 Jul 2009 01:59:38 +0000 (21:59 -0400)]
Allow interaction when unmounting mounts
For details, see bug 587482. The new api:
- Provide new _with_operation() variants of all unmount and eject methods
- Add GMountOperation::show-processes signal
- this can be used to show processes blocking an unmount operation
- Deprecate all unmount and eject methods
- Add g_drive_can_start_degraded() method
- this is to avoid auto-starting degraded drives
- Make g_drive_stop() resp. g_file_stop_mountable() take a GMountOperation
- these ops were recently added and not yet public API so it's fine
to change how they work
- Provide a way to poll mountable files, e.g. g_file_poll_mountable()
- Add some missing file attributes for mountable files
- G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE
- needed for the GDU Nautilus extensions to format a volume
- G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED:
- mimics g_drive_can_start_degraded()
- G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL:
- mimics g_drive_can_poll_for_media()
- G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC
- mimics g_drive_is_media_check_automatic()
Benjamin Otte [Sun, 5 Jul 2009 19:34:39 +0000 (21:34 +0200)]
[gio] minor improvements to g_cancellable_cancel()
- make this function not crash when cancellable is NULL
- avoid locking when the cancellable has already been cancelled
Yaron Shahrabani [Sun, 5 Jul 2009 15:06:57 +0000 (18:06 +0300)]
Updated Hebrew translation
Christian Persch [Fri, 3 Jul 2009 19:20:11 +0000 (21:20 +0200)]
Add @basename@ substitution to glib-mkenums
Move man page addition to the right place. Bug #587307.
Christian Persch [Mon, 29 Jun 2009 13:28:22 +0000 (15:28 +0200)]
Add @basename@ substitution to glib-mkenums
Since @filename@ contains the full filename as given to the glib-mkenum
command, possibly including path elements (e.g. when using a non-srcdir
build), it is unsuitable to use in a #include statement in the generated
file if one wants to distribute it. This patch adds @basename@ which
expands to the base name of the input filename. Bug #587307.
Mattias Põldaru [Thu, 2 Jul 2009 02:23:26 +0000 (05:23 +0300)]
Updating Estonian translation
Dan Winship [Wed, 1 Jul 2009 17:52:49 +0000 (13:52 -0400)]
Two "make check" fixes for late changes to the thread-context patch
g_simple_async_result_complete() now checks that it's being run from
the correct main loop, so tests/gio/simple-async-result was failing,
because it called it from outside any main loop. (And gio's pltcheck
was failing because I hadn't added g_main_current_source() to it.)
Benjamin Otte [Wed, 1 Jul 2009 17:03:19 +0000 (19:03 +0200)]
Move gio tests from gio/tests/ to tests/gio/
This avoids getting tests built every time when working on libgio and
running make in the gio/ directory.
Dan Winship [Wed, 17 Jun 2009 00:22:58 +0000 (20:22 -0400)]
Support g_main_context_push_thread_default() in gio
GFile allows for the possibility that external implementations may not
support thread-default contexts yet, via
g_file_supports_thread_contexts(). GVolumeMonitor is not yet
thread-default-context aware.
Add a test program to verify that basic gio async ops work correctly
in non-default contexts.
http://bugzilla.gnome.org/show_bug.cgi?id=579984
Dan Winship [Fri, 5 Jun 2009 01:59:15 +0000 (21:59 -0400)]
Add g_main_context_push_thread_default() etc
This allows applications to use async methods from other threads, or
in multiple independent main loops.
http://bugzilla.gnome.org/show_bug.cgi?id=579984
Dan Winship [Fri, 19 Jun 2009 14:30:14 +0000 (10:30 -0400)]
Use low-level GSource methods in a few more places
(in preparation for thread-default context support)
Dan Winship [Wed, 17 Jun 2009 00:21:29 +0000 (20:21 -0400)]
Remove some unused code
Dan Winship [Tue, 23 Jun 2009 16:01:34 +0000 (12:01 -0400)]
Fix GResolver for g_simple_async_result_set_op_res_gpointer change
Previously, re-setting the pointer value would cause the old
GDestroyNotify to be lost; now it causes it to be run.
http://bugzilla.gnome.org/show_bug.cgi?id=587415
Benjamin Otte [Tue, 30 Jun 2009 18:33:19 +0000 (20:33 +0200)]
Bug 587434 – regression tests fail
make this test not only compile, but also run successfully with mad
CFLAGS.
Benjamin Otte [Tue, 30 Jun 2009 17:08:46 +0000 (19:08 +0200)]
Bug 587434 – regression tests fail
I missed one s/tmpfile/tmp_file/ which caused crashes.
Dan Winship [Tue, 23 Jun 2009 21:42:01 +0000 (17:42 -0400)]
Add GCancellables to GSocket ops
Currently, to implement cancellability correctly, all synchronous
calls to GSocket must be preceded by a g_socket_condition_wait() call,
(even though GSocket does this internally as well) and all
asynchronous calls must do occasional manual
g_cancellable_is_cancelled() checks. Since it's trivial to do these
checks inside GSocket instead, and we don't particularly want to
encourage people to use the APIs non-cancellably, move the
cancellation support into GSocket and simplify the existing callers.
http://bugzilla.gnome.org/show_bug.cgi?id=586797
Benjamin Otte [Mon, 29 Jun 2009 16:32:09 +0000 (18:32 +0200)]
remove unused label
complained about by -Wall
Benjamin Otte [Mon, 29 Jun 2009 16:24:08 +0000 (18:24 +0200)]
fix warnings from gcc compilation with my mad CFLAGS
Benjamin Otte [Mon, 29 Jun 2009 13:28:08 +0000 (15:28 +0200)]
add g_file_attribute_set_*_by_id() and use them
This patch and the previous ones fixes the performance issues noted in
Bug 587089 – lookup_attribute() takes too much CPU
It increases performance for querying attributes by ~15% in my tests.
Benjamin Otte [Mon, 29 Jun 2009 12:13:14 +0000 (14:13 +0200)]
export and use _g_file_attribute_matcher_matches_id()
Benjamin Otte [Mon, 29 Jun 2009 11:55:22 +0000 (13:55 +0200)]
add private header with attribute ids
attribute ids are generated when the attribute hash is initialized. This
way we can guarantee that the ids match every time.
Benjamin Otte [Mon, 29 Jun 2009 11:33:50 +0000 (13:33 +0200)]
split lookup_attribute() into two functions
Benjamin Otte [Mon, 29 Jun 2009 11:21:08 +0000 (13:21 +0200)]
split attribute hash initialization into its own function
Christian Dywan [Sun, 28 Jun 2009 00:45:50 +0000 (02:45 +0200)]
Display '-h' in --help output and accept '-h' and -?'
'-h' is the preferred short version of '--help' now and displayed
in '--help' but for backwards compatibility '-?' is still supported.
If existing code uses '-h' for something else, GOptionContext will
not override it.
Fixes bug 556706.
Jani Monoses [Sat, 27 Jun 2009 08:03:47 +0000 (11:03 +0300)]
Fix C++ warnings in g_error() code
Put space before ending semicolon in for(;;) ; to avoid C++ build warnings.
Closes bug 586928.
Matthias Clasen [Sat, 27 Jun 2009 03:18:17 +0000 (23:18 -0400)]
Move some uri functions to a better place
Matthias Clasen [Sat, 27 Jun 2009 03:09:35 +0000 (23:09 -0400)]
Fix a typo
Tom Parker [Sat, 27 Jun 2009 02:43:31 +0000 (22:43 -0400)]
Add NULL to end of g_filename_complete_get_completions() return value
g_filename_complete_get_completions() return value is meant to be a
g_strfreev-compatible array i.e. NULL-terminated. However, pointer arrays
aren't automagically NULL-terminated. This fixes bug 586868
Ivar Smolin [Fri, 26 Jun 2009 07:39:25 +0000 (10:39 +0300)]
Updating Estonian translation
Alexander Larsson [Thu, 25 Jun 2009 07:18:01 +0000 (09:18 +0200)]
Allow setting G_FILE_ATTRIBUTE_TYPE_INVALID attributes in GFileInfo
This is used to unset an attribute in g_file_set_attributes_from_info.
Matthias Clasen [Thu, 25 Jun 2009 03:07:15 +0000 (23:07 -0400)]
Add a note about g_simple_async_result_set_op_res_pointer change
Richard Hughes [Fri, 19 Jun 2009 09:16:22 +0000 (10:16 +0100)]
Allow GCancellable to be subclassed by adding a private structure
David Zeuthen [Mon, 22 Jun 2009 19:33:41 +0000 (15:33 -0400)]
Bug 586675 – Runtime library location
Introduce an option to specify the runtime location for libraries via
a relative path to libdir.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Alexander Larsson [Thu, 18 Jun 2009 07:05:27 +0000 (09:05 +0200)]
Add extension point for adding metadata for local files
This adds a local_file_add_info vfunc to GVfs that vfs implementations
can override to add metadata for local files.
Alexander Larsson [Tue, 23 Jun 2009 09:30:14 +0000 (11:30 +0200)]
Add g_file_info_set_attribute_status
Required for gvfs implementation for set_attribures_from_info.
Alexander Larsson [Tue, 23 Jun 2009 09:29:16 +0000 (11:29 +0200)]
Add g_file_info_has_namespace
Need this to quickly see if we should set attributes from
this GFileInfo in metadata extension.
Alexander Larsson [Mon, 22 Jun 2009 17:25:32 +0000 (19:25 +0200)]
Add string vector attribute type to GFileInfo
This is needed for the new metadata backend since nautilus has a
string-list metadata type, and we want to use this for nautilus.
Alexander Larsson [Tue, 23 Jun 2009 13:07:00 +0000 (15:07 +0200)]
Copy namespaces correctly in g_file_copy_attributes
File attribute namespaces are delimited with "::", but
build_attribute_list_for_copy only used ":", so we didn't copy
any writable namespaces.
Jorge Gonzalez [Sun, 21 Jun 2009 09:13:20 +0000 (11:13 +0200)]
Updated Spanish translation
Matthias Clasen [Sat, 20 Jun 2009 03:44:29 +0000 (23:44 -0400)]
Use pipe2 when available
This avoids a small window for races between pipe and fdset.
Reported in bug 579933 by Thiago Macieira.
Matthias Clasen [Sat, 20 Jun 2009 03:18:09 +0000 (23:18 -0400)]
Fix build on mingw
Mingw does not have sys/uio.h. This was reported in bug 585937.
Author: Matthias Clasen <mclasen@redhat.com>
Ryan Lortie [Thu, 18 Jun 2009 19:00:01 +0000 (15:00 -0400)]
GMappedFile: add refcounting, switch to GSlice
- add g_mapped_file_ref() and g_mapped_file_unref().
- deprecate g_mapped_file_free().
- move to GSlice for allocating the GMappedFile struct.
Alexander Larsson [Thu, 18 Jun 2009 17:43:46 +0000 (19:43 +0200)]
Use io_prio as mainloop prio for async-emulation (#579449)
I'm not sure why we used the elaborate formula to convert the io-priority
to the priority of the mainloop idle when emulating async i/o with idles.
However, it causes the default io priority to be less than the normal
idle prio, so the i/o won't be scheduled if there is an idle outstanding.
There is really no great mapping to use here, doing blocking i/o in an
idle of any prio is generally bad and apps doing a lot of async i/o should
initialize threads. However, if we use the io-priority directly we at least
avoid the starvation problem above and make things easier to understand.
Benjamin Otte [Thu, 18 Jun 2009 13:28:41 +0000 (15:28 +0200)]
Revert "clarify documentation"
This reverts commit
d218cf0f670e4c40acb47ab5b5761ea0c68e0594.
This has been fixed in the code, so no need to keep the updated docs.
Benjamin Otte [Thu, 18 Jun 2009 13:27:12 +0000 (15:27 +0200)]
syntax fix in documentation
Benjamin Otte [Tue, 16 Jun 2009 13:18:11 +0000 (15:18 +0200)]
fix typo in documentation
Benjamin Otte [Fri, 12 Jun 2009 15:45:27 +0000 (17:45 +0200)]
clarify documentation
Matthias Clasen [Mon, 15 Jun 2009 17:27:40 +0000 (13:27 -0400)]
Bump version to 2.21.3
Matthias Clasen [Mon, 15 Jun 2009 17:25:43 +0000 (13:25 -0400)]
2.21.2
Matthias Clasen [Mon, 15 Jun 2009 16:57:21 +0000 (12:57 -0400)]
Add g_setenv
Matthias Clasen [Mon, 15 Jun 2009 16:26:41 +0000 (12:26 -0400)]
Update for 2.21.2
David Zeuthen [Mon, 15 Jun 2009 14:53:41 +0000 (10:53 -0400)]
Bug 585591 – Starting/stopping drives
Add API for starting/stopping drives. This new API will enable
GVolumeMonitor and GVfs implementations to add support for the
following features
1. Powering down external hard disk enclosures / drives
2. Starting/stopping multi-disk devices (such as RAID/btrfs/ZFS)
3. Connecting/disconnecting iSCSI devices
4. Reacting to the user pressing e.g. the "remove drive" button on
a IBM/Lenovo Ultrabay: http://www.thinkwiki.org/wiki/Ultrabay
See the bug for the corresponding GVfs and Nautilus changes.
Ondrej Jirman [Sat, 30 May 2009 06:23:46 +0000 (08:23 +0200)]
Fix incorrect freeing of thread pool in GThreadedSocketService (#584255)
Alexander Larsson [Mon, 15 Jun 2009 13:43:39 +0000 (15:43 +0200)]
Emit changed in g_socket_listener_add_socket, not in add_address
This way we emit this signal when add_socket is called from another
place than add_address too.
Alexander Larsson [Mon, 15 Jun 2009 13:42:38 +0000 (15:42 +0200)]
Ref the passed in socket in g_socket_listener_add_socket (#585599)
Alexander Larsson [Mon, 15 Jun 2009 12:23:57 +0000 (14:23 +0200)]
Add bound address out-argument to g_socket_listener_add_address (#585566)
This is very useful when binding to "any" port.
Alexander Larsson [Mon, 15 Jun 2009 11:18:22 +0000 (13:18 +0200)]
Add g_reload_user_special_dirs_cache (#541276)
This is useful for nautilus that changes the xdg-user-dirs files.
Alexander Larsson [Mon, 15 Jun 2009 10:25:43 +0000 (12:25 +0200)]
Avoid unnecessary work if mount watching not specified (#585360)
If G_FILE_MONITOR_WATCH_MOUNTS isn't specified, don't do all the work
when the mtab changes.
Matthias Clasen [Mon, 15 Jun 2009 05:45:34 +0000 (01:45 -0400)]
Support special icons for xdg user dirs
The icon names are folder-documents, folder-download, folder-music,
folder-pictures, folder-publicshare, folder-templates, folder-videos.
See bug 541276.
Matthias Clasen [Mon, 15 Jun 2009 05:12:50 +0000 (01:12 -0400)]
Don't use deprecated GLib api
Fixes bug 585673.
Matthias Clasen [Mon, 15 Jun 2009 05:09:25 +0000 (01:09 -0400)]
Refer to the correct gcc deprecation options
This oversight was pointed out in bug 585520.
Matthias Clasen [Mon, 15 Jun 2009 05:03:54 +0000 (01:03 -0400)]
Fix some typos in list documentation
This fixes bug 585726.
Matthias Clasen [Mon, 15 Jun 2009 04:52:43 +0000 (00:52 -0400)]
Extract strings from g_dngettext too
There is one occurrence of this in glib, which we currently miss.
See bug 585717.
Matthias Clasen [Mon, 15 Jun 2009 04:45:55 +0000 (00:45 -0400)]
Fix the icon property implementation
Turns out both the setter and the getter were broken...
Fixes bug 585676.
Matthias Clasen [Mon, 15 Jun 2009 04:38:34 +0000 (00:38 -0400)]
Trivial formatting fixes
Matthias Clasen [Mon, 15 Jun 2009 03:55:12 +0000 (23:55 -0400)]
Include sys/uio.h for struct iovec
This fixes the build on OS X, bug 585280.
Matthias Clasen [Mon, 15 Jun 2009 02:26:52 +0000 (22:26 -0400)]
Use inotify_init1 when available
To avoid leaking the inotify fd. Fixes bug 585478.
Ryan Lortie [Sun, 14 Jun 2009 17:58:35 +0000 (13:58 -0400)]
Add GNIO test cases to .gitignore
Ryan Lortie [Fri, 12 Jun 2009 17:01:04 +0000 (13:01 -0400)]
Bug 585575 – g_socket_listener_add_inet_port()
Change the logic in g_socket_listener_add_inet_port() as per the
reasoning in the bug report.
- If the OS supports neither IPv6 or IPv4, fail.
- If the OS supports only IPv6, do that.
- If the OS supports only IPv4, do that.
- If the OS supports IPv6 and IPv6 "speaks" IPv4 then bind it
and be done.
- If the OS supports IPv6 and IPv6 doesn't "speak" IPv4 then
create an additional socket for IPv4.
- If binding any socket fails then fail the entire call.
Also, remove the ability to call this function with port == 0. This
is a useless thing to do anyway since you have no way to know what
port number was actually allocated. We should have a separate
function to deal with this.
Ryan Lortie [Fri, 12 Jun 2009 16:21:07 +0000 (12:21 -0400)]
add g_socket_speaks_ipv4()
Partial fix for Bug 585575.
Benjamin Otte [Fri, 12 Jun 2009 13:57:51 +0000 (15:57 +0200)]
make all APIs that take inet port arguments take a guint16
Benjamin Otte [Fri, 12 Jun 2009 13:57:12 +0000 (15:57 +0200)]
don't make strings const when they are not
gets rid of compiler warnings
Matthias Clasen [Thu, 11 Jun 2009 16:41:16 +0000 (12:41 -0400)]
Fix an oversight in the previous commit
We don't want to unset DISPLAY etc, if none is specified in the
app launch context.
Matthias Clasen [Thu, 11 Jun 2009 03:50:45 +0000 (23:50 -0400)]
Fix g_string_chunk_insert_len to accept nuls
Contrary to what the documentation says, g_string_chunk_insert_len
was stopping at the first nul. Also add a test. Fixes bug 585088.
Matthias Clasen [Thu, 11 Jun 2009 03:28:32 +0000 (23:28 -0400)]
Include sys/types.h in gunixfdmessage.c
As recommended in 'man socket'. Fixes bug 585281.
Matthias Clasen [Wed, 10 Jun 2009 20:20:51 +0000 (16:20 -0400)]
Make setting DISPLAY work
And remove a bunch of grotty code to manipulate an environment
array at the same time. Instead, simply call setenv in the child_setup
function.
Matthias Clasen [Wed, 10 Jun 2009 20:20:38 +0000 (16:20 -0400)]
Support automake 1.11
Kjartan Maraas [Wed, 10 Jun 2009 07:43:33 +0000 (09:43 +0200)]
Updated Norwegian bokmål translation.
Dan Winship [Tue, 9 Jun 2009 13:32:43 +0000 (09:32 -0400)]
Revert part of fix for old OS X that broke the compile on current OS X
http://bugzilla.gnome.org/show_bug.cgi?id=584574
Michael Meeks [Tue, 9 Jun 2009 10:31:42 +0000 (11:31 +0100)]
move start_element emission out into a new (inlined) function, so
the alloca'd memory is released on return, rather than slowly blowing
the stack.
Benjamin Otte [Tue, 9 Jun 2009 08:54:22 +0000 (10:54 +0200)]
Bug 585189 – g_cancellable_reset() must be called in same thread ...
... as g_cancellable_cancel()
Rework a g_critical() that would (rarely) trigger when _reset() was
called in a thread different from _cancel() by making _reset() wait for
the cancel function to be finished the same way
g_cancellable_disconnect() uses.
Runa Bhattacharjee [Tue, 9 Jun 2009 06:18:53 +0000 (11:48 +0530)]
Updated Bengali India Translations
Benjamin Otte [Mon, 8 Jun 2009 15:29:22 +0000 (17:29 +0200)]
update the overview image of the gio docs
The old image was confusing and after some discussions in #nautilus we
made a new one.
Benjamin Otte [Mon, 8 Jun 2009 13:29:57 +0000 (15:29 +0200)]
typo in documentation
Benjamin Otte [Mon, 8 Jun 2009 13:27:12 +0000 (15:27 +0200)]
only query file info in g_file_copy() when we need it
The default implementation of g_file_copy() checked the size of the file
to copy to give useful progress updates unconditionally. This can cause
long delays on 1-connection FTP servers while it tries to open a second
connection before it returns EBUSY. This patch makes this query only
happen when we actually send progress updates.
Alexander Larsson [Mon, 1 Jun 2009 20:09:21 +0000 (22:09 +0200)]
Reformat g_themed_icon_get_names return type to make gtk-doc work
Seems the gtk-doc scanner needs "const gchar* const *" to work, so switching
to that.
Dan Winship [Thu, 28 May 2009 19:27:04 +0000 (15:27 -0400)]
Fix multiple bugs in g_srv_target_list_sort()
In particular, targets with weight 0 should be very UNlikely to be
selected, not very likely, as they were before. However, even ignoring
that bug in the logic, there was an additional bug (swapping list
items would cause the 0-weight items to get re-ordered incorrectly
anyway), and the code contained several fencepost errors.
This patch also adds gio/tests/srvtarget.c, which confirms that for a
sample list of targets, we now generate all possible correct random
sortings and no incorrect sortings, and the correct sortings occur in
roughly the expected proportions (though if the current code is
still wrong, those proportions may be wrong as well).
http://bugzilla.gnome.org/show_bug.cgi?id=583398
Dan Winship [Sun, 24 May 2009 00:49:47 +0000 (21:49 -0300)]
Clarify some GSocket docs
Dan Winship [Mon, 27 Apr 2009 21:35:04 +0000 (17:35 -0400)]
Misc networking build fixes
http://bugzilla.gnome.org/show_bug.cgi?id=580301
http://bugzilla.gnome.org/show_bug.cgi?id=584176
Tor Lillqvist [Mon, 1 Jun 2009 11:04:49 +0000 (14:04 +0300)]
Bump _WIN32_WINNT to 0x0501
Needed to get prototypes for getaddrinfo() and friends on mingw.
Hans Breuer [Sat, 30 May 2009 13:33:14 +0000 (15:33 +0200)]
Define fstat() for msvc build
Hans Breuer [Sat, 30 May 2009 13:29:23 +0000 (15:29 +0200)]
Updated msvc build files
Hans Breuer [Sat, 30 May 2009 13:24:06 +0000 (15:24 +0200)]
Version resource template for gio
Hans Breuer [Sat, 30 May 2009 13:18:02 +0000 (15:18 +0200)]
Handle EAI_NODATA==EAI_NONAME in win32 SDK
Hans Breuer [Sat, 30 May 2009 13:14:01 +0000 (15:14 +0200)]
Include io.h for write() on win32
Hans Breuer [Sat, 30 May 2009 13:08:29 +0000 (15:08 +0200)]
Simplified for pre-built package use
Hans Breuer [Sat, 30 May 2009 13:02:14 +0000 (15:02 +0200)]
Replace FIXME with proper SDK version define
Matthias Clasen [Fri, 29 May 2009 03:50:48 +0000 (23:50 -0400)]
Bump version
Matthias Clasen [Fri, 29 May 2009 03:44:48 +0000 (23:44 -0400)]
Release 2.21.1