brasero r902 - in branches/video: . src
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r902 - in branches/video: . src
- Date: Fri, 20 Jun 2008 15:56:59 +0000 (UTC)
Author: philippr
Date: Fri Jun 20 15:56:58 2008
New Revision: 902
URL: http://svn.gnome.org/viewvc/brasero?rev=902&view=rev
Log:
Fix a problem with freshly formatted DVD+RW
* src/burn-medium.c (brasero_medium_get_capacity_DVD_RW),
(brasero_medium_get_sessions_info):
Modified:
branches/video/ChangeLog
branches/video/src/burn-medium.c
Modified: branches/video/src/burn-medium.c
==============================================================================
--- branches/video/src/burn-medium.c (original)
+++ branches/video/src/burn-medium.c Fri Jun 20 15:56:58 2008
@@ -624,9 +624,13 @@
return BRASERO_BURN_ERR;
}
+ /* see if the media is already formatted */
current = hdr->max_caps;
+ if (!(current->type & BRASERO_SCSI_DESC_FORMATTED)) {
+ BRASERO_BURN_LOG ("Unformatted media");
+ priv->info |= BRASERO_MEDIUM_UNFORMATTED;
+ }
- /* see if the media is already formatted */
max = (hdr->len -
sizeof (BraseroScsiMaxCapacityDesc)) /
sizeof (BraseroScsiFormattableCapacityDesc);
@@ -642,6 +646,7 @@
/* that can happen */
if (!priv->block_size)
priv->block_size = 2048;
+
break;
}
}
@@ -1881,7 +1886,8 @@
g_free (track);
priv->info |= BRASERO_MEDIUM_BLANK;
- priv->info &= ~BRASERO_MEDIUM_CLOSED;
+ priv->info &= ~(BRASERO_MEDIUM_CLOSED|
+ BRASERO_MEDIUM_HAS_DATA);
}
else
priv->next_wr_add = 0;
@@ -1892,8 +1898,17 @@
priv->tracks = g_slist_reverse (priv->tracks);
if (BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_PLUS)
- || BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_RESTRICTED))
- brasero_medium_add_DVD_plus_RW_leadout (self, BRASERO_GET_32 (desc->track_start));
+ || BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_RESTRICTED)) {
+ gint32 start;
+
+ /* It starts where the other one finishes */
+ if (priv->tracks)
+ start = BRASERO_GET_32 (desc->track_start);
+ else
+ start = 0;
+
+ brasero_medium_add_DVD_plus_RW_leadout (self, start);
+ }
else if (!(priv->info & BRASERO_MEDIUM_CLOSED)) {
BraseroMediumTrack *track;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]