static void mount (GFile *file) { GMountOperation *op; if (file == NULL) return; op = new_mount_op (); if (mount_mountable) g_file_mount_mountable (file, 0, op, NULL, mount_mountable_done_cb, op); else g_file_mount_enclosing_volume (file, 0, op, NULL, mount_done_cb, op); outstanding_mounts++; }
static void vfs_file_mount (NautilusFile *file, GMountOperation *mount_op, GCancellable *cancellable, NautilusFileOperationCallback callback, gpointer callback_data) { NautilusFileOperation *op; GError *error; GFile *location; if (file->details->type != G_FILE_TYPE_MOUNTABLE) { if (callback) { error = NULL; g_set_error_literal (&error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED, _("This file cannot be mounted")); callback (file, NULL, error, callback_data); g_error_free (error); } return; } op = nautilus_file_operation_new (file, callback, callback_data); if (cancellable) { g_object_unref (op->cancellable); op->cancellable = g_object_ref (cancellable); } location = nautilus_file_get_location (file); g_file_mount_mountable (location, 0, mount_op, op->cancellable, vfs_file_mount_callback, op); g_object_unref (location); }
void vfs_backend_mount (const gchar *cURI, int iVolumeID, CairoDockFMMountCallback pCallback, Icon *icon, CairoContainer *pContainer) { g_return_if_fail (iVolumeID > 0); cd_message ("%s (%s)", __func__, cURI); /*gchar *cTargetURI = NULL; GMount *pMount = _cd_find_mount_from_uri (cURI, &cTargetURI); cd_message (" %x / %s\n", pMount, cTargetURI); GVolume *pVolume = g_mount_get_volume (pMount); gpointer *data2 = g_new (gpointer, 5); data2[0] = pCallback; data2[1] = GINT_TO_POINTER (1); data2[2] = g_path_get_basename (cURI); data2[3] = icon; data2[4] = pDock; g_volume_mount (pVolume, G_MOUNT_MOUNT_NONE, NULL, NULL, (GAsyncReadyCallback) _vfs_backend_mount_callback, data2);*/ gchar *cTargetURI = _cd_find_target_uri (cURI); GFile *pFile = g_file_new_for_uri (cURI); gpointer *data2 = g_new (gpointer, 5); data2[0] = pCallback; data2[1] = GINT_TO_POINTER (1); data2[2] = g_path_get_basename (cTargetURI); data2[3] = icon; data2[4] = pContainer; g_file_mount_mountable (pFile, G_MOUNT_MOUNT_NONE, NULL, NULL, (GAsyncReadyCallback) _vfs_backend_mount_callback, data2); g_free (cTargetURI); }