[brasero] 2009-05-06 Philippe Rouquier <bonfire-app wanadoo fr>
- From: Philippe Rouquier <philippr src gnome org>
- To: svn-commits-list gnome org
- Subject: [brasero] 2009-05-06 Philippe Rouquier <bonfire-app wanadoo fr>
- Date: Wed, 6 May 2009 14:43:24 -0400 (EDT)
commit 17fe5311b9895c9aa6811ec6cd99808a29936d5a
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date: Wed May 6 20:36:28 2009 +0200
2009-05-06 Philippe Rouquier <bonfire-app wanadoo fr>
Some cleanup regarding BraseroIO. Now brasero_io_* () functions can be
called without the BraseroIO object as an argument since we always passed
a default object anyway.
* libbrasero-burn/brasero-data-session.c
(brasero_io_image_directory_contents_destroy),
(brasero_io_image_directory_contents_thread),
(brasero_io_load_image_directory),
(brasero_data_session_load_directory_contents_real),
(brasero_data_session_stop_io):
* libbrasero-burn/brasero-data-vfs.c
(brasero_data_vfs_load_directory), (brasero_data_vfs_load_node),
(brasero_data_vfs_require_higher_priority),
(brasero_data_vfs_require_directory_contents),
(brasero_data_vfs_require_node_load), (brasero_data_vfs_load_mime),
(brasero_data_vfs_clear), (brasero_data_vfs_init),
(brasero_data_vfs_finalize):
* libbrasero-burn/brasero-track-stream-cfg.c
(brasero_track_stream_cfg_get_info):
* libbrasero-burn/burn-basics.c (brasero_burn_library_stop):
* libbrasero-utils/brasero-io.c (brasero_io_get_default),
(brasero_io_return_result), (brasero_io_push_job),
(brasero_io_job_free), (brasero_io_job_destroy),
(brasero_io_get_file_info_thread), (brasero_io_new_file_info_job),
(brasero_io_get_file_info), (brasero_io_parse_playlist_thread),
(brasero_io_parse_playlist), (brasero_io_get_file_count_destroy),
(brasero_io_get_file_count_thread), (brasero_io_get_file_count),
(brasero_io_load_directory_destroy),
(brasero_io_load_directory_playlist),
(brasero_io_load_directory_thread), (brasero_io_load_directory),
(brasero_io_cancel_by_base), (brasero_io_cancel_by_data),
(brasero_io_find_urgent), (brasero_io_free_async_queue),
(brasero_io_shutdown):
* libbrasero-utils/brasero-io.h:
* src/brasero-audio-disc.c (brasero_audio_disc_reset_real),
(brasero_audio_disc_finalize),
(brasero_audio_disc_visit_dir_async),
(brasero_audio_disc_add_playlist),
(brasero_audio_disc_add_uri_real),
(brasero_audio_disc_inotify_move),
(brasero_audio_disc_inotify_attributes_changed),
(brasero_audio_disc_inotify_monitor_cb):
* src/brasero-player.c (brasero_player_retrieve_metadata),
(brasero_player_set_uri), (brasero_player_destroy):
* src/brasero-playlist.c (brasero_playlist_init),
(brasero_playlist_destroy), (brasero_playlist_add_uri_playlist):
* src/brasero-project-manager.c
(brasero_project_manager_selected_uris_preview),
(brasero_project_manager_selected_uris_changed),
(brasero_project_manager_sidepane_changed),
(brasero_project_manager_finalize):
* src/brasero-video-project.c (brasero_video_project_reset),
(brasero_video_project_add_directory_contents),
(brasero_video_project_add_uri),
(brasero_video_project_file_modified):
---
ChangeLog | 58 +++++++++
libbrasero-burn/brasero-data-session.c | 25 ++---
libbrasero-burn/brasero-data-vfs.c | 36 ++----
libbrasero-burn/brasero-track-stream-cfg.c | 7 +-
libbrasero-burn/burn-basics.c | 5 +
libbrasero-utils/brasero-io.c | 176 +++++++++++++++-------------
libbrasero-utils/brasero-io.h | 61 +++--------
src/brasero-audio-disc.c | 80 ++++---------
src/brasero-player.c | 20 +---
src/brasero-playlist.c | 17 +--
src/brasero-project-manager.c | 31 ++----
src/brasero-video-project.c | 27 ++---
12 files changed, 244 insertions(+), 299 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 08a808b..0621eb9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,63 @@
2009-05-06 Philippe Rouquier <bonfire-app wanadoo fr>
+ Some cleanup regarding BraseroIO. Now brasero_io_* () functions can be
+ called without the BraseroIO object as an argument since we always passed
+ a default object anyway.
+
+ * libbrasero-burn/brasero-data-session.c
+ (brasero_io_image_directory_contents_destroy),
+ (brasero_io_image_directory_contents_thread),
+ (brasero_io_load_image_directory),
+ (brasero_data_session_load_directory_contents_real),
+ (brasero_data_session_stop_io):
+ * libbrasero-burn/brasero-data-vfs.c
+ (brasero_data_vfs_load_directory), (brasero_data_vfs_load_node),
+ (brasero_data_vfs_require_higher_priority),
+ (brasero_data_vfs_require_directory_contents),
+ (brasero_data_vfs_require_node_load), (brasero_data_vfs_load_mime),
+ (brasero_data_vfs_clear), (brasero_data_vfs_init),
+ (brasero_data_vfs_finalize):
+ * libbrasero-burn/brasero-track-stream-cfg.c
+ (brasero_track_stream_cfg_get_info):
+ * libbrasero-burn/burn-basics.c (brasero_burn_library_stop):
+ * libbrasero-utils/brasero-io.c (brasero_io_get_default),
+ (brasero_io_return_result), (brasero_io_push_job),
+ (brasero_io_job_free), (brasero_io_job_destroy),
+ (brasero_io_get_file_info_thread), (brasero_io_new_file_info_job),
+ (brasero_io_get_file_info), (brasero_io_parse_playlist_thread),
+ (brasero_io_parse_playlist), (brasero_io_get_file_count_destroy),
+ (brasero_io_get_file_count_thread), (brasero_io_get_file_count),
+ (brasero_io_load_directory_destroy),
+ (brasero_io_load_directory_playlist),
+ (brasero_io_load_directory_thread), (brasero_io_load_directory),
+ (brasero_io_cancel_by_base), (brasero_io_cancel_by_data),
+ (brasero_io_find_urgent), (brasero_io_free_async_queue),
+ (brasero_io_shutdown):
+ * libbrasero-utils/brasero-io.h:
+ * src/brasero-audio-disc.c (brasero_audio_disc_reset_real),
+ (brasero_audio_disc_finalize),
+ (brasero_audio_disc_visit_dir_async),
+ (brasero_audio_disc_add_playlist),
+ (brasero_audio_disc_add_uri_real),
+ (brasero_audio_disc_inotify_move),
+ (brasero_audio_disc_inotify_attributes_changed),
+ (brasero_audio_disc_inotify_monitor_cb):
+ * src/brasero-player.c (brasero_player_retrieve_metadata),
+ (brasero_player_set_uri), (brasero_player_destroy):
+ * src/brasero-playlist.c (brasero_playlist_init),
+ (brasero_playlist_destroy), (brasero_playlist_add_uri_playlist):
+ * src/brasero-project-manager.c
+ (brasero_project_manager_selected_uris_preview),
+ (brasero_project_manager_selected_uris_changed),
+ (brasero_project_manager_sidepane_changed),
+ (brasero_project_manager_finalize):
+ * src/brasero-video-project.c (brasero_video_project_reset),
+ (brasero_video_project_add_directory_contents),
+ (brasero_video_project_add_uri),
+ (brasero_video_project_file_modified):
+
+2009-05-06 Philippe Rouquier <bonfire-app wanadoo fr>
+
Remove unneeded function
* libbrasero-burn/burn-debug.c:
diff --git a/libbrasero-burn/brasero-data-session.c b/libbrasero-burn/brasero-data-session.c
index f8f58d4..e874e3b 100644
--- a/libbrasero-burn/brasero-data-session.c
+++ b/libbrasero-burn/brasero-data-session.c
@@ -56,7 +56,6 @@
typedef struct _BraseroDataSessionPrivate BraseroDataSessionPrivate;
struct _BraseroDataSessionPrivate
{
- BraseroIO *io;
BraseroIOJobBase *load_dir;
/* Multisession drives that are inserted */
@@ -107,7 +106,7 @@ brasero_io_image_directory_contents_destroy (BraseroAsyncTaskManager *manager,
BraseroIOImageContentsData *data = callback_data;
g_free (data->dev_image);
- brasero_io_job_free (BRASERO_IO (manager), cancelled, BRASERO_IO_JOB (data));
+ brasero_io_job_free (cancelled, BRASERO_IO_JOB (data));
}
static BraseroAsyncTaskResult
@@ -125,8 +124,7 @@ brasero_io_image_directory_contents_thread (BraseroAsyncTaskManager *manager,
vol = brasero_volume_source_open_device_handle (handle, &error);
if (!vol) {
brasero_device_handle_close (handle);
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
data->job.uri,
NULL,
error,
@@ -158,8 +156,7 @@ brasero_io_image_directory_contents_thread (BraseroAsyncTaskManager *manager,
else
g_file_info_set_size (info, BRASERO_VOLUME_FILE_SIZE (file));
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
data->job.uri,
info,
NULL,
@@ -178,8 +175,7 @@ static const BraseroAsyncTaskType image_contents_type = {
};
void
-brasero_io_load_image_directory (BraseroIO *self,
- const gchar *dev_image,
+brasero_io_load_image_directory (const gchar *dev_image,
gint64 session_block,
gint64 block,
const BraseroIOJobBase *base,
@@ -204,8 +200,7 @@ brasero_io_load_image_directory (BraseroIO *self,
options,
callback_data);
- brasero_io_push_job (self,
- BRASERO_IO_JOB (data),
+ brasero_io_push_job (BRASERO_IO_JOB (data),
&image_contents_type);
}
@@ -418,8 +413,6 @@ brasero_data_session_load_directory_contents_real (BraseroDataSession *self,
brasero_medium_get_last_data_track_address (priv->loaded,
NULL,
&session_block);
- if (!priv->io)
- priv->io = brasero_io_get_default ();
if (!priv->load_dir)
priv->load_dir = brasero_io_register (G_OBJECT (self),
@@ -433,8 +426,7 @@ brasero_data_session_load_directory_contents_real (BraseroDataSession *self,
node->is_exploring = TRUE;
}
- brasero_io_load_image_directory (priv->io,
- device,
+ brasero_io_load_image_directory (device,
session_block,
BRASERO_FILE_NODE_IMPORTED_ADDRESS (node),
priv->load_dir,
@@ -626,9 +618,8 @@ brasero_data_session_stop_io (BraseroDataSession *self)
priv = BRASERO_DATA_SESSION_PRIVATE (self);
- if (priv->io) {
- brasero_io_cancel_by_base (priv->io, priv->load_dir);
-
+ if (priv->load_dir) {
+ brasero_io_cancel_by_base (priv->load_dir);
g_free (priv->load_dir);
priv->load_dir = NULL;
}
diff --git a/libbrasero-burn/brasero-data-vfs.c b/libbrasero-burn/brasero-data-vfs.c
index 3460fc3..29306d9 100644
--- a/libbrasero-burn/brasero-data-vfs.c
+++ b/libbrasero-burn/brasero-data-vfs.c
@@ -63,7 +63,6 @@ struct _BraseroDataVFSPrivate
BraseroFilteredUri *filtered;
- BraseroIO *io;
BraseroIOJobBase *load_uri;
BraseroIOJobBase *load_contents;
@@ -476,8 +475,7 @@ brasero_data_vfs_load_directory (BraseroDataVFS *self,
NULL);
/* no need to require mime types here as these rows won't be visible */
- brasero_io_load_directory (priv->io,
- uri,
+ brasero_io_load_directory (uri,
priv->load_contents,
BRASERO_IO_INFO_PERM|
(priv->replace_sym ? BRASERO_IO_INFO_FOLLOW_SYMLINK:BRASERO_IO_INFO_NONE),
@@ -709,8 +707,7 @@ brasero_data_vfs_load_node (BraseroDataVFS *self,
brasero_data_vfs_loading_node_end,
NULL);
- brasero_io_get_file_info (priv->io,
- uri,
+ brasero_io_get_file_info (uri,
priv->load_uri,
flags|
(priv->replace_sym ? BRASERO_IO_INFO_FOLLOW_SYMLINK:BRASERO_IO_INFO_NONE),
@@ -789,7 +786,6 @@ brasero_data_vfs_increase_priority_cb (gpointer data, gpointer user_data)
static gboolean
brasero_data_vfs_require_higher_priority (BraseroDataVFS *self,
BraseroFileNode *node,
- BraseroIO *io,
BraseroIOJobBase *type)
{
gchar *registered;
@@ -799,8 +795,7 @@ brasero_data_vfs_require_higher_priority (BraseroDataVFS *self,
registered = brasero_utils_register_string (uri);
g_free (uri);
- brasero_io_find_urgent (io,
- type,
+ brasero_io_find_urgent (type,
brasero_data_vfs_increase_priority_cb,
registered);
@@ -817,7 +812,6 @@ brasero_data_vfs_require_directory_contents (BraseroDataVFS *self,
priv = BRASERO_DATA_VFS_PRIVATE (self);
return brasero_data_vfs_require_higher_priority (self,
node,
- priv->io,
priv->load_contents);
}
@@ -830,7 +824,6 @@ brasero_data_vfs_require_node_load (BraseroDataVFS *self,
priv = BRASERO_DATA_VFS_PRIVATE (self);
return brasero_data_vfs_require_higher_priority (self,
node,
- priv->io,
priv->load_uri);
}
@@ -871,8 +864,7 @@ brasero_data_vfs_load_mime (BraseroDataVFS *self,
ref_node = brasero_data_project_reference_get (BRASERO_DATA_PROJECT (self), reference);
if (ref_node == node) {
/* Ask for a higher priority */
- brasero_io_find_urgent (priv->io,
- priv->load_uri,
+ brasero_io_find_urgent (priv->load_uri,
brasero_data_vfs_increase_priority_cb,
registered);
brasero_utils_unregister_string (registered);
@@ -886,8 +878,7 @@ brasero_data_vfs_load_mime (BraseroDataVFS *self,
g_hash_table_insert (priv->loading, registered, nodes);
/* Yet, ask for a higher priority */
- brasero_io_find_urgent (priv->io,
- priv->load_uri,
+ brasero_io_find_urgent (priv->load_uri,
brasero_data_vfs_increase_priority_cb,
registered);
brasero_utils_unregister_string (registered);
@@ -977,13 +968,14 @@ brasero_data_vfs_clear (BraseroDataVFS *self)
priv = BRASERO_DATA_VFS_PRIVATE (self);
/* Stop all VFS operations */
- if (priv->io) {
- brasero_io_cancel_by_base (priv->io, priv->load_uri);
- brasero_io_cancel_by_base (priv->io, priv->load_contents);
-
+ if (priv->load_uri) {
+ brasero_io_cancel_by_base (priv->load_uri);
g_free (priv->load_uri);
priv->load_uri = NULL;
+ }
+ if (priv->load_contents) {
+ brasero_io_cancel_by_base (priv->load_contents);
g_free (priv->load_contents);
priv->load_contents = NULL;
}
@@ -1123,9 +1115,6 @@ brasero_data_vfs_init (BraseroDataVFS *object)
/* create the hash tables */
priv->loading = g_hash_table_new (g_str_hash, g_str_equal);
priv->directories = g_hash_table_new (g_str_hash, g_str_equal);
-
- /* get the vfs object */
- priv->io = brasero_io_get_default ();
}
static void
@@ -1152,11 +1141,6 @@ brasero_data_vfs_finalize (GObject *object)
priv->filtered = NULL;
}
- if (priv->io) {
- g_object_unref (priv->io);
- priv->io = NULL;
- }
-
G_OBJECT_CLASS (brasero_data_vfs_parent_class)->finalize (object);
}
diff --git a/libbrasero-burn/brasero-track-stream-cfg.c b/libbrasero-burn/brasero-track-stream-cfg.c
index fab7516..889d48d 100644
--- a/libbrasero-burn/brasero-track-stream-cfg.c
+++ b/libbrasero-burn/brasero-track-stream-cfg.c
@@ -43,7 +43,6 @@
typedef struct _BraseroTrackStreamCfgPrivate BraseroTrackStreamCfgPrivate;
struct _BraseroTrackStreamCfgPrivate
{
- BraseroIO *io;
BraseroIOJobBase *load_uri;
GError *error;
@@ -147,9 +146,6 @@ brasero_track_stream_cfg_get_info (BraseroTrackStreamCfg *track)
}
/* get info async for the file */
- if (!priv->io)
- priv->io = brasero_io_get_default ();
-
if (!priv->load_uri)
priv->load_uri = brasero_io_register (G_OBJECT (track),
brasero_video_project_result_cb,
@@ -158,8 +154,7 @@ brasero_track_stream_cfg_get_info (BraseroTrackStreamCfg *track)
priv->loading = TRUE;
uri = brasero_track_stream_get_source (BRASERO_TRACK_STREAM (track), TRUE);
- brasero_io_get_file_info (priv->io,
- uri,
+ brasero_io_get_file_info (uri,
priv->load_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
diff --git a/libbrasero-burn/burn-basics.c b/libbrasero-burn/burn-basics.c
index a405e10..e3cbb86 100644
--- a/libbrasero-burn/burn-basics.c
+++ b/libbrasero-burn/burn-basics.c
@@ -39,6 +39,8 @@
#include <gconf/gconf-client.h>
+#include "brasero-io.h"
+
#include "burn-basics.h"
#include "burn-debug.h"
#include "burn-caps.h"
@@ -252,6 +254,9 @@ brasero_burn_library_stop (void)
medium_manager = NULL;
}
+ /* Cleanup the io thing */
+ brasero_io_shutdown ();
+
/* close HAL connection */
// brasero_hal_watch_destroy ();
}
diff --git a/libbrasero-utils/brasero-io.c b/libbrasero-utils/brasero-io.c
index a90eef0..b1a9d39 100644
--- a/libbrasero-utils/brasero-io.c
+++ b/libbrasero-utils/brasero-io.c
@@ -53,6 +53,28 @@
#include "brasero-metadata.h"
#include "brasero-async-task-manager.h"
+#define BRASERO_TYPE_IO (brasero_io_get_type ())
+#define BRASERO_IO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BRASERO_TYPE_IO, BraseroIO))
+#define BRASERO_IO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BRASERO_TYPE_IO, BraseroIOClass))
+#define BRASERO_IS_IO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BRASERO_TYPE_IO))
+#define BRASERO_IS_IO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BRASERO_TYPE_IO))
+#define BRASERO_IO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BRASERO_TYPE_IO, BraseroIOClass))
+
+typedef struct _BraseroIOClass BraseroIOClass;
+typedef struct _BraseroIO BraseroIO;
+
+struct _BraseroIOClass
+{
+ BraseroAsyncTaskManagerClass parent_class;
+};
+
+struct _BraseroIO
+{
+ BraseroAsyncTaskManager parent_instance;
+};
+
+GType brasero_io_get_type (void) G_GNUC_CONST;
+
typedef struct _BraseroIOPrivate BraseroIOPrivate;
struct _BraseroIOPrivate
{
@@ -120,6 +142,20 @@ struct _BraseroIOJobProgress {
G_DEFINE_TYPE (BraseroIO, brasero_io, BRASERO_TYPE_ASYNC_TASK_MANAGER);
+static BraseroIO *singleton = NULL;
+
+static BraseroIO *
+brasero_io_get_default ()
+{
+ if (singleton) {
+ g_object_ref (singleton);
+ return singleton;
+ }
+
+ singleton = g_object_new (BRASERO_TYPE_IO, NULL);
+ return singleton;
+}
+
/**
* That's the structure to pass the progress on
*/
@@ -355,13 +391,13 @@ brasero_io_queue_result (BraseroIO *self,
}
void
-brasero_io_return_result (BraseroIO *self,
- const BraseroIOJobBase *base,
+brasero_io_return_result (const BraseroIOJobBase *base,
const gchar *uri,
GFileInfo *info,
GError *error,
BraseroIOResultCallbackData *callback_data)
{
+ BraseroIO *self = brasero_io_get_default ();
BraseroIOJobResult *result;
/* even if it is cancelled we let the result go through to be able to
@@ -379,6 +415,7 @@ brasero_io_return_result (BraseroIO *self,
}
brasero_io_queue_result (self, result);
+ g_object_unref (self);
}
/**
@@ -402,10 +439,11 @@ brasero_io_set_job (BraseroIOJob *job,
}
void
-brasero_io_push_job (BraseroIO *self,
- BraseroIOJob *job,
+brasero_io_push_job (BraseroIOJob *job,
const BraseroAsyncTaskType *type)
{
+ BraseroIO *self = brasero_io_get_default ();
+
if (job->options & BRASERO_IO_INFO_URGENT)
brasero_async_task_manager_queue (BRASERO_ASYNC_TASK_MANAGER (self),
BRASERO_ASYNC_URGENT,
@@ -421,6 +459,7 @@ brasero_io_push_job (BraseroIO *self,
BRASERO_ASYNC_NORMAL,
type,
job);
+ g_object_unref (self);
}
/**
@@ -428,8 +467,7 @@ brasero_io_push_job (BraseroIO *self,
*/
void
-brasero_io_job_free (BraseroIO *self,
- gboolean cancelled,
+brasero_io_job_free (gboolean cancelled,
BraseroIOJob *job)
{
/* NOTE: the callback_data member is never destroyed here since it would
@@ -459,13 +497,16 @@ brasero_io_job_free (BraseroIO *self,
g_free (job->callback_data);
}
- else
- brasero_io_return_result (self,
- job->base,
+ else {
+ BraseroIO *self = brasero_io_get_default ();
+
+ brasero_io_return_result (job->base,
NULL,
NULL,
NULL,
job->callback_data);
+ g_object_unref (self);
+ }
}
}
@@ -488,7 +529,7 @@ brasero_io_job_destroy (BraseroAsyncTaskManager *manager,
/* NOTE: usually threads are cancelled from the main thread/loop and
* block until the active task is removed which means that if we called
* the destroy () then the destruction would be done in the main loop */
- brasero_io_job_free (BRASERO_IO (manager), cancelled, job);
+ brasero_io_job_free (cancelled, job);
}
/**
@@ -1170,8 +1211,7 @@ brasero_io_get_file_info_thread (BraseroAsyncTaskManager *manager,
file_uri = g_file_get_uri (file);
g_object_unref (file);
- brasero_io_return_result (BRASERO_IO (manager),
- job->base,
+ brasero_io_return_result (job->base,
file_uri,
info,
error,
@@ -1187,8 +1227,7 @@ static const BraseroAsyncTaskType info_type = {
};
static void
-brasero_io_new_file_info_job (BraseroIO *self,
- const gchar *uri,
+brasero_io_new_file_info_job (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
BraseroIOResultCallbackData *callback_data)
@@ -1202,24 +1241,25 @@ brasero_io_new_file_info_job (BraseroIO *self,
options,
callback_data);
- brasero_io_push_job (self, job, &info_type);
+ brasero_io_push_job (job, &info_type);
}
void
-brasero_io_get_file_info (BraseroIO *self,
- const gchar *uri,
+brasero_io_get_file_info (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer user_data)
{
BraseroIOResultCallbackData *callback_data = NULL;
+ BraseroIO *self = brasero_io_get_default ();
if (user_data) {
callback_data = g_new0 (BraseroIOResultCallbackData, 1);
callback_data->callback_data = user_data;
}
- brasero_io_new_file_info_job (self, uri, base, options, callback_data);
+ brasero_io_new_file_info_job (uri, base, options, callback_data);
+ g_object_unref (self);
}
/**
@@ -1318,8 +1358,7 @@ brasero_io_parse_playlist_thread (BraseroAsyncTaskManager *manager,
result = brasero_io_parse_playlist_get_uris (job->uri, &data, &error);
if (!result) {
- brasero_io_return_result (BRASERO_IO (manager),
- job->base,
+ brasero_io_return_result (job->base,
job->uri,
NULL,
error,
@@ -1343,8 +1382,7 @@ brasero_io_parse_playlist_thread (BraseroAsyncTaskManager *manager,
BRASERO_IO_PLAYLIST_TITLE,
data.title);
- brasero_io_return_result (BRASERO_IO (manager),
- job->base,
+ brasero_io_return_result (job->base,
job->uri,
info,
NULL,
@@ -1373,8 +1411,7 @@ brasero_io_parse_playlist_thread (BraseroAsyncTaskManager *manager,
if (!child_info)
continue;
- brasero_io_return_result (BRASERO_IO (manager),
- job->base,
+ brasero_io_return_result (job->base,
child,
child_info,
NULL,
@@ -1391,13 +1428,13 @@ static const BraseroAsyncTaskType playlist_type = {
};
void
-brasero_io_parse_playlist (BraseroIO *self,
- const gchar *uri,
+brasero_io_parse_playlist (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer user_data)
{
BraseroIOJob *job;
+ BraseroIO *self = brasero_io_get_default ();
BraseroIOResultCallbackData *callback_data = NULL;
if (user_data) {
@@ -1412,7 +1449,8 @@ brasero_io_parse_playlist (BraseroIO *self,
options,
callback_data);
- brasero_io_push_job (self, job, &playlist_type);
+ brasero_io_push_job (job, &playlist_type);
+ g_object_unref (self);
}
#endif
@@ -1450,7 +1488,7 @@ brasero_io_get_file_count_destroy (BraseroAsyncTaskManager *manager,
brasero_io_job_progress_report_stop (BRASERO_IO (manager), callback_data);
- brasero_io_job_free (BRASERO_IO (manager), cancelled, callback_data);
+ brasero_io_job_free (cancelled, callback_data);
}
#ifdef BUILD_PLAYLIST
@@ -1704,8 +1742,7 @@ brasero_io_get_file_count_thread (BraseroAsyncTaskManager *manager,
g_file_info_set_attribute_uint64 (info, BRASERO_IO_COUNT_SIZE, data->total_b);
g_file_info_set_attribute_uint32 (info, BRASERO_IO_COUNT_NUM, data->files_num);
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
NULL,
info,
NULL,
@@ -1736,13 +1773,13 @@ static const BraseroAsyncTaskType count_type = {
};
void
-brasero_io_get_file_count (BraseroIO *self,
- GSList *uris,
+brasero_io_get_file_count (GSList *uris,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer user_data)
{
BraseroIOCountData *data;
+ BraseroIO *self = brasero_io_get_default ();
BraseroIOResultCallbackData *callback_data = NULL;
if (user_data) {
@@ -1761,7 +1798,8 @@ brasero_io_get_file_count (BraseroIO *self,
options,
callback_data);
- brasero_io_push_job (self, BRASERO_IO_JOB (data), &count_type);
+ brasero_io_push_job (BRASERO_IO_JOB (data), &count_type);
+ g_object_unref (self);
}
/**
@@ -1784,7 +1822,7 @@ brasero_io_load_directory_destroy (BraseroAsyncTaskManager *manager,
g_slist_foreach (data->children, (GFunc) g_object_unref, NULL);
g_slist_free (data->children);
- brasero_io_job_free (BRASERO_IO (manager), cancelled, BRASERO_IO_JOB (data));
+ brasero_io_job_free (cancelled, BRASERO_IO_JOB (data));
}
#ifdef BUILD_PLAYLIST
@@ -1832,8 +1870,7 @@ brasero_io_load_directory_playlist (BraseroIO *self,
if (result) {
brasero_io_set_metadata_attributes (info, &metadata);
- brasero_io_return_result (self,
- data->job.base,
+ brasero_io_return_result (data->job.base,
child_uri,
info,
NULL,
@@ -1898,8 +1935,7 @@ brasero_io_load_directory_thread (BraseroAsyncTaskManager *manager,
gchar *directory_uri;
directory_uri = g_file_get_uri (file);
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
directory_uri,
NULL,
error,
@@ -1946,8 +1982,7 @@ brasero_io_load_directory_thread (BraseroAsyncTaskManager *manager,
/* since we checked for the existence of the file
* an error means a looping symbolic link */
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
child_uri,
NULL,
error,
@@ -1961,8 +1996,7 @@ brasero_io_load_directory_thread (BraseroAsyncTaskManager *manager,
}
if (g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY) {
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
child_uri,
info,
NULL,
@@ -2016,8 +2050,7 @@ brasero_io_load_directory_thread (BraseroAsyncTaskManager *manager,
brasero_metadata_info_clear (&metadata);
}
- brasero_io_return_result (BRASERO_IO (manager),
- data->job.base,
+ brasero_io_return_result (data->job.base,
child_uri,
info,
NULL,
@@ -2042,13 +2075,13 @@ static const BraseroAsyncTaskType contents_type = {
};
void
-brasero_io_load_directory (BraseroIO *self,
- const gchar *uri,
+brasero_io_load_directory (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer user_data)
{
BraseroIOContentsData *data;
+ BraseroIO *self = brasero_io_get_default ();
BraseroIOResultCallbackData *callback_data = NULL;
if (user_data) {
@@ -2063,7 +2096,8 @@ brasero_io_load_directory (BraseroIO *self,
options,
callback_data);
- brasero_io_push_job (self, BRASERO_IO_JOB (data), &contents_type);
+ brasero_io_push_job (BRASERO_IO_JOB (data), &contents_type);
+ g_object_unref (self);
}
static void
@@ -2102,12 +2136,12 @@ brasero_io_cancel_tasks_by_base_cb (BraseroAsyncTaskManager *manager,
}
void
-brasero_io_cancel_by_base (BraseroIO *self,
- BraseroIOJobBase *base)
+brasero_io_cancel_by_base (BraseroIOJobBase *base)
{
GSList *iter;
GSList *next;
BraseroIOPrivate *priv;
+ BraseroIO *self = brasero_io_get_default ();
priv = BRASERO_IO_PRIVATE (self);
@@ -2131,6 +2165,8 @@ brasero_io_cancel_by_base (BraseroIO *self,
brasero_io_cancel_result (self, result);
}
+
+ g_object_unref (self);
}
static gboolean
@@ -2147,12 +2183,12 @@ brasero_io_cancel_tasks_by_data_cb (BraseroAsyncTaskManager *manager,
}
void
-brasero_io_cancel_by_data (BraseroIO *self,
- gpointer callback_data)
+brasero_io_cancel_by_data (gpointer callback_data)
{
GSList *iter;
GSList *next;
BraseroIOPrivate *priv;
+ BraseroIO *self = brasero_io_get_default ();
priv = BRASERO_IO_PRIVATE (self);
@@ -2176,6 +2212,8 @@ brasero_io_cancel_by_data (BraseroIO *self,
brasero_io_cancel_result (self, result);
}
+
+ g_object_unref (self);
}
struct _BraseroIOJobCompareData {
@@ -2203,12 +2241,12 @@ brasero_io_compare_unprocessed_task (BraseroAsyncTaskManager *manager,
}
void
-brasero_io_find_urgent (BraseroIO *self,
- const BraseroIOJobBase *base,
+brasero_io_find_urgent (const BraseroIOJobBase *base,
BraseroIOCompareCallback callback,
gpointer user_data)
{
BraseroIOJobCompareData callback_data;
+ BraseroIO *self = brasero_io_get_default ();
callback_data.func = callback;
callback_data.base = base;
@@ -2217,6 +2255,7 @@ brasero_io_find_urgent (BraseroIO *self,
brasero_async_task_manager_find_urgent_task (BRASERO_ASYNC_TASK_MANAGER (self),
brasero_io_compare_unprocessed_task,
&callback_data);
+ g_object_unref (self);
}
@@ -2264,7 +2303,7 @@ brasero_io_free_async_queue (BraseroAsyncTaskManager *manager,
{
BraseroIOJob *job = callback_data;
- brasero_io_job_free (BRASERO_IO (manager), TRUE, job);
+ brasero_io_job_free (TRUE, job);
return TRUE;
}
@@ -2365,32 +2404,11 @@ brasero_io_class_init (BraseroIOClass *klass)
object_class->finalize = brasero_io_finalize;
}
-static BraseroIO *singleton = NULL;
-
-static void
-brasero_io_last_reference_cb (gpointer null_data,
- GObject *object,
- gboolean is_last_ref)
-{
- if (is_last_ref) {
- singleton = NULL;
- g_object_remove_toggle_ref (object,
- brasero_io_last_reference_cb,
- null_data);
- }
-}
-
-BraseroIO *
-brasero_io_get_default ()
+void
+brasero_io_shutdown (void)
{
if (singleton) {
- g_object_ref (singleton);
- return singleton;
+ singleton = NULL;
+ g_object_unref (singleton);
}
-
- singleton = g_object_new (BRASERO_TYPE_IO, NULL);
- g_object_add_toggle_ref (G_OBJECT (singleton),
- brasero_io_last_reference_cb,
- NULL);
- return singleton;
}
diff --git a/libbrasero-utils/brasero-io.h b/libbrasero-utils/brasero-io.h
index 75286db..80e47bc 100644
--- a/libbrasero-utils/brasero-io.h
+++ b/libbrasero-utils/brasero-io.h
@@ -37,28 +37,6 @@
G_BEGIN_DECLS
-#define BRASERO_TYPE_IO (brasero_io_get_type ())
-#define BRASERO_IO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BRASERO_TYPE_IO, BraseroIO))
-#define BRASERO_IO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BRASERO_TYPE_IO, BraseroIOClass))
-#define BRASERO_IS_IO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BRASERO_TYPE_IO))
-#define BRASERO_IS_IO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BRASERO_TYPE_IO))
-#define BRASERO_IO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BRASERO_TYPE_IO, BraseroIOClass))
-
-typedef struct _BraseroIOClass BraseroIOClass;
-typedef struct _BraseroIO BraseroIO;
-
-struct _BraseroIOClass
-{
- BraseroAsyncTaskManagerClass parent_class;
-};
-
-struct _BraseroIO
-{
- BraseroAsyncTaskManager parent_instance;
-};
-
-GType brasero_io_get_type (void) G_GNUC_CONST;
-
typedef enum {
BRASERO_IO_INFO_NONE = 0,
BRASERO_IO_INFO_MIME = 1,
@@ -154,32 +132,29 @@ typedef struct _BraseroIOJob BraseroIOJob;
#define BRASERO_IO_JOB(data) ((BraseroIOJob *) (data))
void
-brasero_io_job_free (BraseroIO *self,
- gboolean cancelled,
+brasero_io_job_free (gboolean cancelled,
BraseroIOJob *job);
void
-brasero_io_set_job (BraseroIOJob *job,
+brasero_io_set_job (BraseroIOJob *self,
const BraseroIOJobBase *base,
const gchar *uri,
BraseroIOFlags options,
BraseroIOResultCallbackData *callback_data);
void
-brasero_io_push_job (BraseroIO *self,
- BraseroIOJob *job,
+brasero_io_push_job (BraseroIOJob *job,
const BraseroAsyncTaskType *type);
void
-brasero_io_return_result (BraseroIO *self,
- const BraseroIOJobBase *base,
+brasero_io_return_result (const BraseroIOJobBase *base,
const gchar *uri,
GFileInfo *info,
GError *error,
BraseroIOResultCallbackData *callback_data);
-BraseroIO *
-brasero_io_get_default (void);
+void
+brasero_io_shutdown (void);
BraseroIOJobBase *
brasero_io_register (GObject *object,
@@ -188,22 +163,18 @@ brasero_io_register (GObject *object,
BraseroIOProgressCallback progress);
void
-brasero_io_cancel_by_data (BraseroIO *self,
- gpointer callback_data);
+brasero_io_cancel_by_data (gpointer callback_data);
void
-brasero_io_cancel_by_base (BraseroIO *self,
- BraseroIOJobBase *base);
+brasero_io_cancel_by_base (BraseroIOJobBase *base);
void
-brasero_io_find_urgent (BraseroIO *self,
- const BraseroIOJobBase *base,
+brasero_io_find_urgent (const BraseroIOJobBase *base,
BraseroIOCompareCallback callback,
gpointer callback_data);
void
-brasero_io_load_image_directory (BraseroIO *self,
- const gchar *dev_image,
+brasero_io_load_image_directory (const gchar *dev_image,
gint64 session_block,
gint64 block,
const BraseroIOJobBase *base,
@@ -211,26 +182,22 @@ brasero_io_load_image_directory (BraseroIO *self,
gpointer user_data);
void
-brasero_io_load_directory (BraseroIO *self,
- const gchar *uri,
+brasero_io_load_directory (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer callback_data);
void
-brasero_io_get_file_info (BraseroIO *self,
- const gchar *uri,
+brasero_io_get_file_info (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer callback_data);
void
-brasero_io_get_file_count (BraseroIO *self,
- GSList *uris,
+brasero_io_get_file_count (GSList *uris,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer callback_data);
void
-brasero_io_parse_playlist (BraseroIO *self,
- const gchar *uri,
+brasero_io_parse_playlist (const gchar *uri,
const BraseroIOJobBase *base,
BraseroIOFlags options,
gpointer callback_data);
diff --git a/src/brasero-audio-disc.c b/src/brasero-audio-disc.c
index be34038..cabde9b 100644
--- a/src/brasero-audio-disc.c
+++ b/src/brasero-audio-disc.c
@@ -233,7 +233,6 @@ brasero_audio_disc_cancel_monitoring (BraseroAudioDisc *disc,
#endif
struct _BraseroAudioDiscPrivate {
- BraseroIO *io;
BraseroIOJobBase *attr_changed;
BraseroIOJobBase *add_dir;
BraseroIOJobBase *add_uri;
@@ -802,12 +801,10 @@ brasero_audio_disc_init (BraseroAudioDisc *obj)
static void
brasero_audio_disc_reset_real (BraseroAudioDisc *disc)
{
- if (disc->priv->io) {
- brasero_io_cancel_by_base (disc->priv->io, disc->priv->attr_changed);
- brasero_io_cancel_by_base (disc->priv->io, disc->priv->add_dir);
- brasero_io_cancel_by_base (disc->priv->io, disc->priv->add_uri);
- brasero_io_cancel_by_base (disc->priv->io, disc->priv->add_playlist);
- }
+ brasero_io_cancel_by_base (disc->priv->attr_changed);
+ brasero_io_cancel_by_base (disc->priv->add_dir);
+ brasero_io_cancel_by_base (disc->priv->add_uri);
+ brasero_io_cancel_by_base (disc->priv->add_playlist);
#ifdef BUILD_INOTIFY
@@ -831,8 +828,8 @@ brasero_audio_disc_reset_real (BraseroAudioDisc *disc)
disc->priv->monitored = NULL;
}
- if (disc->priv->reload_uri && disc->priv->io)
- brasero_io_cancel_by_base (disc->priv->io, disc->priv->reload_uri);
+ if (disc->priv->reload_uri && disc->priv->reload_uri)
+ brasero_io_cancel_by_base (disc->priv->reload_uri);
#endif
@@ -867,23 +864,18 @@ brasero_audio_disc_finalize (GObject *object)
#endif
- if (cobj->priv->io) {
- brasero_io_cancel_by_base (cobj->priv->io, cobj->priv->attr_changed);
- brasero_io_cancel_by_base (cobj->priv->io, cobj->priv->add_dir);
- brasero_io_cancel_by_base (cobj->priv->io, cobj->priv->add_uri);
- brasero_io_cancel_by_base (cobj->priv->io, cobj->priv->add_playlist);
- g_free (cobj->priv->attr_changed);
- g_free (cobj->priv->add_dir);
- g_free (cobj->priv->add_uri);
- g_free (cobj->priv->add_playlist);
- cobj->priv->attr_changed = NULL;
- cobj->priv->add_dir = NULL;
- cobj->priv->add_uri = NULL;
- cobj->priv->add_playlist = NULL;
-
- g_object_unref (cobj->priv->io);
- cobj->priv->io = NULL;
- }
+ brasero_io_cancel_by_base (cobj->priv->attr_changed);
+ brasero_io_cancel_by_base (cobj->priv->add_dir);
+ brasero_io_cancel_by_base (cobj->priv->add_uri);
+ brasero_io_cancel_by_base (cobj->priv->add_playlist);
+ g_free (cobj->priv->attr_changed);
+ g_free (cobj->priv->add_dir);
+ g_free (cobj->priv->add_uri);
+ g_free (cobj->priv->add_playlist);
+ cobj->priv->attr_changed = NULL;
+ cobj->priv->add_dir = NULL;
+ cobj->priv->add_uri = NULL;
+ cobj->priv->add_playlist = NULL;
if (cobj->priv->manager) {
g_object_unref (cobj->priv->manager);
@@ -1444,9 +1436,6 @@ static BraseroDiscResult
brasero_audio_disc_visit_dir_async (BraseroAudioDisc *disc,
const gchar *uri)
{
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->add_dir)
disc->priv->add_dir = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_result,
@@ -1456,8 +1445,7 @@ brasero_audio_disc_visit_dir_async (BraseroAudioDisc *disc,
brasero_audio_disc_increase_activity_counter (disc);
/* we have to pass a dummy value here otherwise finished is never called */
- brasero_io_load_directory (disc->priv->io,
- uri,
+ brasero_io_load_directory (uri,
disc->priv->add_dir,
BRASERO_IO_INFO_MIME|
BRASERO_IO_INFO_PERM|
@@ -1505,9 +1493,6 @@ static BraseroDiscResult
brasero_audio_disc_add_playlist (BraseroAudioDisc *disc,
const gchar *uri)
{
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->add_playlist)
disc->priv->add_playlist = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_result,
@@ -1515,8 +1500,7 @@ brasero_audio_disc_add_playlist (BraseroAudioDisc *disc,
NULL);
brasero_audio_disc_increase_activity_counter (disc);
- brasero_io_parse_playlist (disc->priv->io,
- uri,
+ brasero_io_parse_playlist (uri,
disc->priv->add_playlist,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
@@ -1743,9 +1727,6 @@ brasero_audio_disc_add_uri_real (BraseroAudioDisc *disc,
gtk_tree_path_free (treepath);
/* get info async for the file */
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->add_uri)
disc->priv->add_uri = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_new_row_cb,
@@ -1754,8 +1735,7 @@ brasero_audio_disc_add_uri_real (BraseroAudioDisc *disc,
/* FIXME: if cancelled ref won't be destroyed ?
* no, since the callback is always called even if there is an error */
brasero_audio_disc_increase_activity_counter (disc);
- brasero_io_get_file_info (disc->priv->io,
- uri,
+ brasero_io_get_file_info (uri,
disc->priv->add_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
@@ -4038,17 +4018,13 @@ brasero_audio_disc_inotify_move (BraseroAudioDisc *disc,
/* we are only interested if the destination is in our tree
* then that means the file was modified */
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->reload_uri)
disc->priv->reload_uri = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_inotify_modify_result,
NULL,
NULL);
- brasero_io_get_file_info (disc->priv->io,
- uri,
+ brasero_io_get_file_info (uri,
disc->priv->reload_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
@@ -4093,9 +4069,6 @@ static gboolean
brasero_audio_disc_inotify_attributes_changed (BraseroAudioDisc *disc,
const gchar *uri)
{
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->attr_changed)
disc->priv->attr_changed = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_inotify_attributes_changed_cb,
@@ -4103,8 +4076,7 @@ brasero_audio_disc_inotify_attributes_changed (BraseroAudioDisc *disc,
NULL);
brasero_audio_disc_increase_activity_counter (disc);
- brasero_io_get_file_info (disc->priv->io,
- uri,
+ brasero_io_get_file_info (uri,
disc->priv->attr_changed,
BRASERO_IO_INFO_PERM,
NULL);
@@ -4243,17 +4215,13 @@ brasero_audio_disc_inotify_monitor_cb (GIOChannel *channel,
}
else if (event.mask & IN_MODIFY
&& brasero_audio_disc_inotify_is_in_selection (disc, monitored)) {
- if (!disc->priv->io)
- disc->priv->io = brasero_io_get_default ();
-
if (!disc->priv->reload_uri)
disc->priv->reload_uri = brasero_io_register (G_OBJECT (disc),
brasero_audio_disc_inotify_modify_result,
NULL,
NULL);
- brasero_io_get_file_info (disc->priv->io,
- monitored,
+ brasero_io_get_file_info (monitored,
disc->priv->reload_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
diff --git a/src/brasero-player.c b/src/brasero-player.c
index c5ac485..ed8b6d9 100644
--- a/src/brasero-player.c
+++ b/src/brasero-player.c
@@ -78,7 +78,6 @@ struct BraseroPlayerPrivate {
BraseroPlayerBaconState state;
- BraseroIO *io;
BraseroIOJobBase *meta_task;
gchar *uri;
@@ -953,17 +952,13 @@ brasero_player_metadata_completed (GObject *obj,
static void
brasero_player_retrieve_metadata (BraseroPlayer *player)
{
- if (!player->priv->io)
- player->priv->io = brasero_io_get_default ();
-
if (!player->priv->meta_task)
player->priv->meta_task = brasero_io_register (G_OBJECT (player),
brasero_player_metadata_completed,
NULL,
NULL);
- brasero_io_get_file_info (player->priv->io,
- player->priv->uri,
+ brasero_io_get_file_info (player->priv->uri,
player->priv->meta_task,
BRASERO_IO_INFO_METADATA|
BRASERO_IO_INFO_MIME,
@@ -1037,9 +1032,8 @@ brasero_player_set_uri (BraseroPlayer *player,
player->priv->start = 0;
player->priv->end = 0;
- if (player->priv->io)
- brasero_io_cancel_by_base (player->priv->io,
- player->priv->meta_task);
+ if (player->priv->meta_task)
+ brasero_io_cancel_by_base (player->priv->meta_task);
/* That stops the pipeline from playing */
brasero_player_bacon_set_uri (BRASERO_PLAYER_BACON (player->priv->bacon), NULL);
@@ -1288,17 +1282,11 @@ brasero_player_destroy (GtkObject *obj)
}
if (player->priv->meta_task){
- brasero_io_cancel_by_base (player->priv->io,
- player->priv->meta_task);
+ brasero_io_cancel_by_base (player->priv->meta_task);
g_free (player->priv->meta_task);
player->priv->meta_task = 0;
}
- if (player->priv->io) {
- g_object_unref (player->priv->io);
- player->priv->io = NULL;
- }
-
if (GTK_OBJECT_CLASS (parent_class)->destroy)
GTK_OBJECT_CLASS (parent_class)->destroy (obj);
}
diff --git a/src/brasero-playlist.c b/src/brasero-playlist.c
index de689a8..c1aa26a 100644
--- a/src/brasero-playlist.c
+++ b/src/brasero-playlist.c
@@ -79,7 +79,6 @@ struct BraseroPlaylistPrivate {
GtkWidget *button_remove;
guint activity_counter;
- BraseroIO *io;
BraseroIOJobBase *parse_type;
gint searched:1;
@@ -252,8 +251,6 @@ brasero_playlist_init (BraseroPlaylist *obj)
obj->priv = g_new0 (BraseroPlaylistPrivate, 1);
gtk_box_set_spacing (GTK_BOX (obj), BRASERO_PLAYLIST_SPACING);
- obj->priv->io = brasero_io_get_default ();
-
hbox = gtk_hbox_new (FALSE, 8);
gtk_widget_show (hbox);
@@ -436,15 +433,10 @@ brasero_playlist_destroy (GtkObject *object)
/* NOTE: we must do it here since cancel could call brasero_playlist_end
* itself calling decrease_activity_counter. In finalize the latter will
* raise problems since the GdkWindow has been destroyed */
- if (playlist->priv->io) {
- brasero_io_cancel_by_base (playlist->priv->io,
- playlist->priv->parse_type);
-
+ if (playlist->priv->parse_type) {
+ brasero_io_cancel_by_base (playlist->priv->parse_type);
g_free (playlist->priv->parse_type);
playlist->priv->parse_type = NULL;
-
- g_object_unref (playlist->priv->io);
- playlist->priv->io = NULL;
}
if (GTK_OBJECT_CLASS (parent_class)->destroy)
@@ -976,11 +968,10 @@ brasero_playlist_add_uri_playlist (BraseroPlaylist *playlist,
if (!playlist->priv->parse_type)
playlist->priv->parse_type = brasero_io_register (G_OBJECT (playlist),
brasero_playlist_parse_result,
- brasero_playlist_parse_end,
+ brasero_playlist_parse_end,
NULL);
- brasero_io_parse_playlist (playlist->priv->io,
- uri,
+ brasero_io_parse_playlist (uri,
playlist->priv->parse_type,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
diff --git a/src/brasero-project-manager.c b/src/brasero-project-manager.c
index eb404f4..b47fb58 100644
--- a/src/brasero-project-manager.c
+++ b/src/brasero-project-manager.c
@@ -156,7 +156,6 @@ static const char *description = {
};
struct BraseroProjectManagerPrivate {
- BraseroIO *io;
BraseroProjectType type;
BraseroIOJobBase *size_preview;
@@ -319,7 +318,7 @@ brasero_project_manager_size_preview (GObject *object,
invalid_num,
files_num);
}
-
+/*
static void
brasero_project_manager_size_preview_progress (GObject *object,
BraseroIOJobProgress *progress,
@@ -336,7 +335,7 @@ brasero_project_manager_size_preview_progress (GObject *object,
0,
files_num);
}
-
+*/
static gboolean
brasero_project_manager_selected_uris_preview (gpointer data)
{
@@ -345,14 +344,11 @@ brasero_project_manager_selected_uris_preview (gpointer data)
GSList *list = NULL;
gchar **iter;
- if (!manager->priv->io)
- manager->priv->io = brasero_io_get_default ();
-
if (!manager->priv->size_preview)
manager->priv->size_preview = brasero_io_register (G_OBJECT (manager),
brasero_project_manager_size_preview,
NULL,
- brasero_project_manager_size_preview_progress);
+ NULL);
for (iter = manager->priv->selected; iter && *iter; iter ++)
list = g_slist_prepend (list, *iter);
@@ -364,8 +360,7 @@ brasero_project_manager_selected_uris_preview (gpointer data)
else if (manager->priv->type == BRASERO_PROJECT_TYPE_DATA)
flags |= BRASERO_IO_INFO_RECURSIVE;
- brasero_io_get_file_count (manager->priv->io,
- list,
+ brasero_io_get_file_count (list,
manager->priv->size_preview,
flags,
NULL);
@@ -424,9 +419,8 @@ brasero_project_manager_selected_uris_changed (BraseroURIContainer *container,
/* if we are in the middle of an unfinished size seek then
* cancel it and re-initialize */
- if (manager->priv->io)
- brasero_io_cancel_by_base (manager->priv->io,
- manager->priv->size_preview);
+ if (manager->priv->size_preview)
+ brasero_io_cancel_by_base (manager->priv->size_preview);
if (manager->priv->selected) {
g_strfreev (manager->priv->selected);
@@ -469,9 +463,8 @@ brasero_project_manager_sidepane_changed (BraseroLayout *layout,
GtkWidget *status;
/* If sidepane is disabled, remove any text about selection */
- if (manager->priv->io)
- brasero_io_cancel_by_base (manager->priv->io,
- manager->priv->size_preview);
+ if (manager->priv->size_preview)
+ brasero_io_cancel_by_base (manager->priv->size_preview);
status = brasero_app_get_statusbar1 (brasero_app_get_default ());
@@ -1166,14 +1159,10 @@ brasero_project_manager_finalize (GObject *object)
cobj = BRASERO_PROJECT_MANAGER (object);
- if (cobj->priv->io) {
- brasero_io_cancel_by_base (cobj->priv->io, cobj->priv->size_preview);
-
+ if (cobj->priv->size_preview) {
+ brasero_io_cancel_by_base (cobj->priv->size_preview);
g_free (cobj->priv->size_preview);
cobj->priv->size_preview = NULL;
-
- g_object_unref (cobj->priv->io);
- cobj->priv->io = NULL;
}
if (cobj->priv->preview_id) {
diff --git a/src/brasero-video-project.c b/src/brasero-video-project.c
index f1cece5..5bc09ee 100644
--- a/src/brasero-video-project.c
+++ b/src/brasero-video-project.c
@@ -37,7 +37,6 @@ struct _BraseroVideoProjectPrivate
guint ref_count;
GHashTable *references;
- BraseroIO *io;
BraseroIOJobBase *load_uri;
BraseroIOJobBase *load_dir;
@@ -379,13 +378,14 @@ brasero_video_project_reset (BraseroVideoProject *self)
priv = BRASERO_VIDEO_PROJECT_PRIVATE (self);
/* cancel all VFS operations */
- if (priv->io) {
- brasero_io_cancel_by_base (priv->io, priv->load_uri);
- brasero_io_cancel_by_base (priv->io, priv->load_dir);
-
+ if (priv->load_uri) {
+ brasero_io_cancel_by_base (priv->load_uri);
g_free (priv->load_uri);
priv->load_uri = NULL;
+ }
+ if (priv->load_dir) {
+ brasero_io_cancel_by_base (priv->load_dir);
g_free (priv->load_dir);
priv->load_dir = NULL;
}
@@ -632,9 +632,6 @@ brasero_video_project_add_directory_contents (BraseroVideoProject *self,
priv = BRASERO_VIDEO_PROJECT_PRIVATE (self);
- if (!priv->io)
- priv->io = brasero_io_get_default ();
-
if (!priv->load_dir)
priv->load_dir = brasero_io_register (G_OBJECT (self),
brasero_video_project_add_directory_contents_result,
@@ -649,8 +646,7 @@ brasero_video_project_add_directory_contents (BraseroVideoProject *self,
ref = brasero_video_project_reference_new (self, sibling);
- brasero_io_load_directory (priv->io,
- uri,
+ brasero_io_load_directory (uri,
priv->load_dir,
BRASERO_IO_INFO_MIME|
BRASERO_IO_INFO_PERM|
@@ -818,9 +814,6 @@ brasero_video_project_add_uri (BraseroVideoProject *self,
klass->node_added (self, file);
/* get info async for the file */
- if (!priv->io)
- priv->io = brasero_io_get_default ();
-
if (!priv->load_uri)
priv->load_uri = brasero_io_register (G_OBJECT (self),
brasero_video_project_result_cb,
@@ -831,8 +824,7 @@ brasero_video_project_add_uri (BraseroVideoProject *self,
priv->loading ++;
ref = brasero_video_project_reference_new (self, file);
- brasero_io_get_file_info (priv->io,
- uri,
+ brasero_io_get_file_info (uri,
priv->load_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
@@ -1103,15 +1095,14 @@ brasero_video_project_file_modified (BraseroFileMonitor *monitor,
/* priv->load_uri has already been initialized otherwise the tree would
* be empty. But who knows... */
- if (!priv->io || !priv->load_uri)
+ if (!priv->load_uri)
return;
file = callback_data;
file->is_reloading = TRUE;
ref = brasero_video_project_reference_new (BRASERO_VIDEO_PROJECT (monitor), file);
- brasero_io_get_file_info (priv->io,
- file->uri,
+ brasero_io_get_file_info (file->uri,
priv->load_uri,
BRASERO_IO_INFO_PERM|
BRASERO_IO_INFO_MIME|
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]