[brasero] Small improvement in medium choosing
- From: Philippe Rouquier <philippr src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [brasero] Small improvement in medium choosing
- Date: Sun, 2 Aug 2009 11:43:21 +0000 (UTC)
commit 9afe1758467ccb8f20cff1bd493253110caa253e
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date: Sun Aug 2 11:00:03 2009 +0200
Small improvement in medium choosing
libbrasero-burn/brasero-dest-selection.c | 25 +++++++++++++------------
libbrasero-media/scsi-inquiry.h | 8 ++++----
2 files changed, 17 insertions(+), 16 deletions(-)
---
diff --git a/libbrasero-burn/brasero-dest-selection.c b/libbrasero-burn/brasero-dest-selection.c
index 752f0e8..5271bd9 100644
--- a/libbrasero-burn/brasero-dest-selection.c
+++ b/libbrasero-burn/brasero-dest-selection.c
@@ -235,7 +235,8 @@ brasero_dest_selection_finalize (GObject *object)
}
static goffset
-_get_medium_free_space (BraseroMedium *medium)
+_get_medium_free_space (BraseroMedium *medium,
+ goffset session_blocks)
{
BraseroMedia media;
goffset blocks = 0;
@@ -244,15 +245,15 @@ _get_medium_free_space (BraseroMedium *medium)
media = brasero_burn_library_get_media_capabilities (media);
/* NOTE: we always try to blank a medium when we can */
- if (media & BRASERO_MEDIUM_REWRITABLE)
- brasero_medium_get_free_space (medium,
- NULL,
- &blocks);
- else {
- brasero_medium_get_free_space (medium,
- NULL,
- &blocks);
- }
+ brasero_medium_get_free_space (medium,
+ NULL,
+ &blocks);
+
+ if ((media & BRASERO_MEDIUM_REWRITABLE)
+ && blocks < session_blocks)
+ brasero_medium_get_capacity (medium,
+ NULL,
+ &blocks);
return blocks;
}
@@ -317,12 +318,12 @@ brasero_dest_selection_foreach_medium (BraseroMedium *medium,
choose_closest_size:
brasero_burn_session_get_size (session, &session_blocks, NULL);
- medium_blocks = _get_medium_free_space (medium);
+ medium_blocks = _get_medium_free_space (medium, session_blocks);
if (medium_blocks - session_blocks <= 0)
return TRUE;
- burner_blocks = _get_medium_free_space (brasero_drive_get_medium (burner));
+ burner_blocks = _get_medium_free_space (brasero_drive_get_medium (burner), session_blocks);
if (burner_blocks - session_blocks <= 0)
brasero_burn_session_set_burner (session, brasero_medium_get_drive (medium));
else if (burner_blocks - session_blocks > medium_blocks - session_blocks)
diff --git a/libbrasero-media/scsi-inquiry.h b/libbrasero-media/scsi-inquiry.h
index 0788dc9..035df08 100644
--- a/libbrasero-media/scsi-inquiry.h
+++ b/libbrasero-media/scsi-inquiry.h
@@ -77,8 +77,8 @@ struct _BraseroScsiInquiry {
uchar rel_addr :1;
uchar vendor [8];
- uchar name [8];
- uchar revision [8];
+ uchar name [16];
+ uchar revision [4];
};
#else
@@ -123,8 +123,8 @@ struct _BraseroScsiInquiry {
uchar vs2 :1;
uchar vendor [8];
- uchar name [8];
- uchar revision [8];
+ uchar name [16];
+ uchar revision [4];
};
#endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]