brasero r1258 - in trunk: . src src/plugins/libburnia
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r1258 - in trunk: . src src/plugins/libburnia
- Date: Mon, 8 Sep 2008 18:14:10 +0000 (UTC)
Author: philippr
Date: Mon Sep 8 18:14:10 2008
New Revision: 1258
URL: http://svn.gnome.org/viewvc/brasero?rev=1258&view=rev
Log:
Miscellaneous improvements and cleanups
* src/brasero-dest-selection.c
(brasero_dest_selection_add_drive_properties_flags):
* src/burn-caps.c (brasero_burn_caps_get_flags):
* src/plugins/libburnia/burn-libisofs.c
(brasero_libisofs_export_caps):
Modified:
trunk/ChangeLog
trunk/src/brasero-dest-selection.c
trunk/src/burn-caps.c
trunk/src/plugins/libburnia/burn-libisofs.c
Modified: trunk/src/brasero-dest-selection.c
==============================================================================
--- trunk/src/brasero-dest-selection.c (original)
+++ trunk/src/brasero-dest-selection.c Mon Sep 8 18:14:10 2008
@@ -767,72 +767,34 @@
BraseroBurnFlag *supported_retval,
BraseroBurnFlag *compulsory_retval)
{
+ BraseroBurnFlag flag;
BraseroDestSelectionPrivate *priv;
BraseroBurnFlag supported = BRASERO_BURN_FLAG_NONE;
BraseroBurnFlag compulsory = BRASERO_BURN_FLAG_NONE;
priv = BRASERO_DEST_SELECTION_PRIVATE (self);
- /* wipe out previous flags */
- brasero_burn_session_remove_flag (priv->session,
- BRASERO_DRIVE_PROPERTIES_FLAGS|
- BRASERO_BURN_FLAG_BLANK_BEFORE_WRITE|
- BRASERO_BURN_FLAG_FAST_BLANK|
- BRASERO_BURN_FLAG_DAO);
+ /* add flags then wipe out flags from session to check them one by one */
+ flags |= brasero_burn_session_get_flags (priv->session);
+ brasero_burn_session_remove_flag (priv->session, flags);
- /* check each flag before re-adding it */
brasero_burn_caps_get_flags (priv->caps,
priv->session,
&supported,
&compulsory);
- if ((flags & BRASERO_BURN_FLAG_EJECT)
- && (supported & BRASERO_BURN_FLAG_EJECT)) {
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_EJECT);
- brasero_burn_caps_get_flags (priv->caps,
- priv->session,
- &supported,
- &compulsory);
- }
-
- if ((flags & BRASERO_BURN_FLAG_BURNPROOF)
- && (supported & BRASERO_BURN_FLAG_BURNPROOF)) {
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_BURNPROOF);
- brasero_burn_caps_get_flags (priv->caps,
- priv->session,
- &supported,
- &compulsory);
- }
-
- if ((flags & BRASERO_BURN_FLAG_NO_TMP_FILES)
- && (supported & BRASERO_BURN_FLAG_NO_TMP_FILES)) {
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_NO_TMP_FILES);
- brasero_burn_caps_get_flags (priv->caps,
- priv->session,
- &supported,
- &compulsory);
- }
-
- if ((flags & BRASERO_BURN_FLAG_DUMMY)
- && (supported & BRASERO_BURN_FLAG_DUMMY)) {
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_DUMMY);
- brasero_burn_caps_get_flags (priv->caps,
- priv->session,
- &supported,
- &compulsory);
- }
-
- /* check additional flags */
- if (supported & BRASERO_BURN_FLAG_BLANK_BEFORE_WRITE) {
- /* clean up the disc and have more space when possible */
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_BLANK_BEFORE_WRITE);
- brasero_burn_caps_get_flags (priv->caps,
- priv->session,
- &supported,
- &compulsory);
-
- if (supported & BRASERO_BURN_FLAG_FAST_BLANK) {
- brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_FAST_BLANK);
+ for (flag = 1; flag < BRASERO_BURN_FLAG_LAST; flag <<= 1) {
+ /* see if this flag was originally set */
+ if (!(flags & flag))
+ continue;
+
+ if (compulsory)
+ brasero_burn_session_add_flag (priv->session, compulsory);
+
+ if (supported & flag) {
+ brasero_burn_session_add_flag (priv->session, flag);
+ supported = BRASERO_BURN_FLAG_NONE;
+ compulsory = BRASERO_BURN_FLAG_NONE;
brasero_burn_caps_get_flags (priv->caps,
priv->session,
&supported,
@@ -840,6 +802,10 @@
}
}
+ flags = brasero_burn_session_get_flags (priv->session);
+ if (flags != (flags | compulsory))
+ brasero_burn_session_add_flag (priv->session, compulsory);
+
/* use DAO whenever it's possible */
if (supported & BRASERO_BURN_FLAG_DAO) {
brasero_burn_session_add_flag (priv->session, BRASERO_BURN_FLAG_DAO);
@@ -848,7 +814,6 @@
&supported,
&compulsory);
}
- brasero_burn_session_add_flag (priv->session, compulsory);
if (supported_retval)
*supported_retval = supported;
Modified: trunk/src/burn-caps.c
==============================================================================
--- trunk/src/burn-caps.c (original)
+++ trunk/src/burn-caps.c Mon Sep 8 18:14:10 2008
@@ -2240,7 +2240,7 @@
retval |= BRASERO_PLUGIN_IO_ACCEPT_PIPE;
else
retval |= caps->flags;
-
+
(*compulsory) &= rec_compulsory;
(*supported) |= data_supported|rec_supported;
continue;
@@ -2455,8 +2455,6 @@
BRASERO_MEDIUM_HAS_DATA|
BRASERO_MEDIUM_HAS_AUDIO);
media |= BRASERO_MEDIUM_BLANK;
- session_flags &= ~BRASERO_BURN_FLAG_BLANK_BEFORE_WRITE;
-
result = brasero_caps_get_flags_for_disc (session_flags,
media,
&input,
Modified: trunk/src/plugins/libburnia/burn-libisofs.c
==============================================================================
--- trunk/src/plugins/libburnia/burn-libisofs.c (original)
+++ trunk/src/plugins/libburnia/burn-libisofs.c Mon Sep 8 18:14:10 2008
@@ -902,7 +902,6 @@
"Philippe Rouquier",
0);
- /* NOTE: we don't include DVDRW+ DVDRW- restricted in here */
brasero_plugin_set_flags (plugin,
BRASERO_MEDIUM_CDR|
BRASERO_MEDIUM_CDRW|
@@ -923,6 +922,7 @@
BRASERO_MEDIUM_APPENDABLE|
BRASERO_MEDIUM_CLOSED|
BRASERO_MEDIUM_HAS_DATA,
+ BRASERO_BURN_FLAG_APPEND|
BRASERO_BURN_FLAG_MERGE,
BRASERO_BURN_FLAG_NONE);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]