brasero r1968 - in trunk: . libbrasero-media



Author: philippr
Date: Fri Feb 20 10:03:28 2009
New Revision: 1968
URL: http://svn.gnome.org/viewvc/brasero?rev=1968&view=rev

Log:
2009-02-20  Philippe Rouquier  <ykw localhost localdomain>

	Improved reading function choice, allowing READ 10 to be chosen for BDs

	* libbrasero-media/burn-volume-source.c
	(brasero_volume_source_open_device_handle):

Modified:
   trunk/ChangeLog
   trunk/libbrasero-media/burn-volume-source.c

Modified: trunk/libbrasero-media/burn-volume-source.c
==============================================================================
--- trunk/libbrasero-media/burn-volume-source.c	(original)
+++ trunk/libbrasero-media/burn-volume-source.c	Fri Feb 20 10:03:28 2009
@@ -317,24 +317,32 @@
 
 	/* check which read function should be used. */
 	result = brasero_mmc2_get_configuration_feature (handle,
-							 BRASERO_SCSI_FEAT_RD_DVD,
+							 BRASERO_SCSI_FEAT_RD_CD,
 							 &hdr,
 							 &size,
 							 NULL);
-	if (result != BRASERO_SCSI_OK) {
-		BRASERO_MEDIA_LOG ("GET CONFIGURATION failed for feature READ DVD. Using READCD.");
-		src->read = brasero_volume_source_readcd_device_handle;
-	}
-	else if (!hdr->desc->current) {
-		BRASERO_MEDIA_LOG ("READ DVD not current. Using READCD.");
+	if (result == BRASERO_SCSI_OK && hdr->desc->current) {
+		BRASERO_MEDIA_LOG ("READ CD current. Using READCD");
 		src->read = brasero_volume_source_readcd_device_handle;
 		g_free (hdr);
+		return src;
 	}
-	else {
+	
+	result = brasero_mmc2_get_configuration_feature (handle,
+							 BRASERO_SCSI_FEAT_RD_RANDOM,
+							 &hdr,
+							 &size,
+							 NULL);
+	if (result == BRASERO_SCSI_OK && hdr->desc->current) {
 		BRASERO_MEDIA_LOG ("READ DVD current. Using READ10");
 		src->read = brasero_volume_source_read10_device_handle;
 		g_free (hdr);
 	}
+	else {
+		BRASERO_MEDIA_LOG ("READ DVD not current. Using READCD.");
+		src->read = brasero_volume_source_readcd_device_handle;
+		g_free (hdr);
+	}
 
 	return src;
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]