brasero r1015 - in trunk: . src
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r1015 - in trunk: . src
- Date: Fri, 18 Jul 2008 12:24:42 +0000 (UTC)
Author: philippr
Date: Fri Jul 18 12:24:41 2008
New Revision: 1015
URL: http://svn.gnome.org/viewvc/brasero?rev=1015&view=rev
Log:
Another minor fix and cleanup for medium code.
* src/burn-medium.c (brasero_medium_add_DVD_plus_RW_leadout),
(brasero_medium_get_sessions_info), (brasero_medium_get_contents),
(brasero_medium_try_open):
Modified:
trunk/ChangeLog
trunk/src/burn-medium.c
Modified: trunk/src/burn-medium.c
==============================================================================
--- trunk/src/burn-medium.c (original)
+++ trunk/src/burn-medium.c Fri Jul 18 12:24:41 2008
@@ -1117,18 +1117,33 @@
*/
static void
-brasero_medium_add_DVD_plus_RW_leadout (BraseroMedium *self,
- gint32 start)
+brasero_medium_add_DVD_plus_RW_leadout (BraseroMedium *self)
{
BraseroMediumTrack *leadout;
BraseroMediumPrivate *priv;
+ gint64 blocks_num;
+ gint32 start;
priv = BRASERO_MEDIUM_PRIVATE (self);
+ /* determine the start */
+ if (priv->tracks) {
+ BraseroMediumTrack *track;
+
+ track = priv->tracks->data;
+ start = track->start + track->blocks_num;
+ blocks_num = priv->block_num - ((track->blocks_num > 300) ? track->blocks_num : 300);
+ }
+ else {
+ start = 0;
+ blocks_num = priv->block_num;
+ }
+
leadout = g_new0 (BraseroMediumTrack, 1);
priv->tracks = g_slist_append (priv->tracks, leadout);
leadout->start = start;
+ leadout->blocks_num = blocks_num;
leadout->type = BRASERO_MEDIUM_TRACK_LEADOUT;
/* we fabricate the leadout here. We don't really need one in
@@ -1138,13 +1153,6 @@
* buggy */
priv->next_wr_add = 0;
- leadout->blocks_num = priv->block_num;
- if (g_slist_length (priv->tracks) > 1) {
- BraseroMediumTrack *track;
-
- track = priv->tracks->data;
- leadout->blocks_num -= ((track->blocks_num > 300) ? track->blocks_num : 300);
- }
BRASERO_BURN_LOG ("Adding fabricated leadout start = %llu length = %llu",
leadout->start,
leadout->blocks_num);
@@ -1241,8 +1249,14 @@
BRASERO_BURN_LOG ("Empty first session.");
}
- else
+ else {
priv->next_wr_add = 0;
+ BRASERO_BURN_LOG ("Track 1 (session %i): type = %i start = %llu size = %llu",
+ track->session,
+ track->type,
+ track->start,
+ track->blocks_num);
+ }
/* NOTE: the next track should be the leadout */
continue;
@@ -1260,17 +1274,8 @@
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)) {
- 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);
- }
+ || BRASERO_MEDIUM_IS (priv->info, BRASERO_MEDIUM_DVDRW_RESTRICTED))
+ brasero_medium_add_DVD_plus_RW_leadout (self);
else if (!(priv->info & BRASERO_MEDIUM_CLOSED)) {
BraseroMediumTrack *track;
@@ -1332,7 +1337,7 @@
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, 0);
+ brasero_medium_add_DVD_plus_RW_leadout (self);
else {
track = g_new0 (BraseroMediumTrack, 1);
track->start = 0;
@@ -2212,6 +2217,7 @@
* but we re-try to open it every second */
BRASERO_BURN_LOG ("Trying to open device %s", path);
handle = brasero_device_handle_open (path, &code);
+
if (!handle) {
if (code == BRASERO_SCSI_NOT_READY) {
BRASERO_BURN_LOG ("Device busy");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]