brasero r1805 - in trunk: . src
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r1805 - in trunk: . src
- Date: Wed, 21 Jan 2009 21:41:30 +0000 (UTC)
Author: philippr
Date: Wed Jan 21 21:41:30 2009
New Revision: 1805
URL: http://svn.gnome.org/viewvc/brasero?rev=1805&view=rev
Log:
2009-01-21 Philippe Rouquier <ykw localhost localdomain>
Try to favour growisofs/libburn over wodim/cdrecord.
The firsts have MULTI flag as compulsory whereas the seconds don't support
it at all. That way if MULTI wasn't on the seconds were always used.
See #567582 â Fails to burn a DVD iso
* src/brasero-session-cfg.c
(brasero_session_cfg_add_drive_properties_flags):
Modified:
trunk/ChangeLog
trunk/src/brasero-session-cfg.c
Modified: trunk/src/brasero-session-cfg.c
==============================================================================
--- trunk/src/brasero-session-cfg.c (original)
+++ trunk/src/brasero-session-cfg.c Wed Jan 21 21:41:30 2009
@@ -231,19 +231,21 @@
brasero_session_cfg_add_drive_properties_flags (BraseroSessionCfg *self,
BraseroBurnFlag flags)
{
+ BraseroMedia media;
BraseroBurnFlag flag;
BraseroBurnResult result;
BraseroSessionCfgPrivate *priv;
priv = BRASERO_SESSION_CFG_PRIVATE (self);
- priv->supported = BRASERO_BURN_FLAG_NONE;
- priv->compulsory = BRASERO_BURN_FLAG_NONE;
+ media = brasero_burn_session_get_dest_media (BRASERO_BURN_SESSION (self));
/* add flags then wipe out flags from session to check them one by one */
flags |= brasero_burn_session_get_flags (BRASERO_BURN_SESSION (self));
brasero_burn_session_remove_flag (BRASERO_BURN_SESSION (self), flags);
+ priv->supported = BRASERO_BURN_FLAG_NONE;
+ priv->compulsory = BRASERO_BURN_FLAG_NONE;
result = brasero_burn_caps_get_flags (priv->caps,
BRASERO_BURN_SESSION (self),
&priv->supported,
@@ -291,6 +293,22 @@
&priv->supported,
&priv->compulsory);
}
+ else if (BRASERO_MEDIUM_IS (media, BRASERO_MEDIUM_DVDRW_PLUS)
+ || BRASERO_MEDIUM_IS (media, BRASERO_MEDIUM_DVDRW_RESTRICTED)
+ || BRASERO_MEDIUM_IS (media, BRASERO_MEDIUM_DVDRW_PLUS_DL)) {
+ /* This is a special case to favour libburn/growisofs
+ * wodim/cdrecord for these types of media. */
+ if (priv->supported & BRASERO_BURN_FLAG_MULTI) {
+ brasero_burn_session_add_flag (BRASERO_BURN_SESSION (self), flag);
+
+ priv->supported = BRASERO_BURN_FLAG_NONE;
+ priv->compulsory = BRASERO_BURN_FLAG_NONE;
+ brasero_burn_caps_get_flags (priv->caps,
+ BRASERO_BURN_SESSION (self),
+ &priv->supported,
+ &priv->compulsory);
+ }
+ }
}
/* Always set this flag whenever possible */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]