summaryrefslogtreecommitdiff
path: root/firmware/common
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-11-20 16:39:42 +0000
committerAmaury Pouly <amaury.pouly@gmail.com>2013-11-20 21:34:04 +0100
commit193753aa1f93ba28995a80048cbc46f1fc5cde05 (patch)
treeb5ff0ab364235dbd49e96ff48ebdedda6701c51d /firmware/common
parentc71e0567d60af8e409ede4034d72e8accf98cb87 (diff)
downloadrockbox-193753aa1f93ba28995a80048cbc46f1fc5cde05.zip
rockbox-193753aa1f93ba28995a80048cbc46f1fc5cde05.tar.gz
rockbox-193753aa1f93ba28995a80048cbc46f1fc5cde05.tar.bz2
rockbox-193753aa1f93ba28995a80048cbc46f1fc5cde05.tar.xz
Introduce volume_{present,removable} and fix invalid calls in apps/
The code was trying to probe for volume presence by calling drive layer with volume index. It is a miracle it get unnoticed so far. Introduce proper volume probing using the vol->drive map in the disk layer. Change-Id: I463a5bcc8170f007cad049536094207d2ba3c6fc Reviewed-on: http://gerrit.rockbox.org/669 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
Diffstat (limited to 'firmware/common')
-rw-r--r--firmware/common/disk.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/firmware/common/disk.c b/firmware/common/disk.c
index fb6daee..5a55a3b 100644
--- a/firmware/common/disk.c
+++ b/firmware/common/disk.c
@@ -292,3 +292,19 @@ int disk_unmount_all(void)
return unmounted;
#endif /* HAVE_MULTIDRIVE */
}
+
+#ifdef HAVE_HOTSWAP
+bool volume_removable(int volume)
+{
+ if(vol_drive[volume] == -1)
+ return false;
+ return storage_removable(vol_drive[volume]);
+}
+
+bool volume_present(int volume)
+{
+ if(vol_drive[volume] == -1)
+ return false;
+ return storage_present(vol_drive[volume]);
+}
+#endif