List volumes on amiga platforms. warning, untested code !
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@460 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
806e491650
commit
9cb5818bec
34
init.c
34
init.c
@ -73,8 +73,38 @@ void Rechercher_drives(void)
|
|||||||
{
|
{
|
||||||
#if defined(__amigaos4__) || defined(__AROS__) || defined(__MORPHOS__)
|
#if defined(__amigaos4__) || defined(__AROS__) || defined(__MORPHOS__)
|
||||||
|
|
||||||
// No icons by default.
|
DosList *dosList;
|
||||||
// It's possible to add some here.
|
CONST ULONG lockDosListFlags = LDF_READ | LDF_VOLUMES;
|
||||||
|
|
||||||
|
dosList = LockDosList(lockDosListFlags);
|
||||||
|
if (dosList)
|
||||||
|
{
|
||||||
|
dosList = NextDosEntry(dosList, LDF_VOLUMES);
|
||||||
|
while (dosList)
|
||||||
|
{
|
||||||
|
if (dosList->dol_Type == DLT_VOLUME dosList->dol_Name && dosList->dol_Task)
|
||||||
|
{
|
||||||
|
TEXT name[256];
|
||||||
|
CONST_STRPTR volume_name = (CONST_STRPTR)BADDR(dosList->dol_Name)+1;
|
||||||
|
CONST_STRPTR device_name = (CONST_STRPTR)((struct Task *)dosList->dol_Task->mp_SigTask)->tc_Node.ln_Name;
|
||||||
|
BPTR volume_lock;
|
||||||
|
|
||||||
|
stccpy(name, volume_name, sizeof(name));
|
||||||
|
strncat(name, ":", sizeof(name));
|
||||||
|
|
||||||
|
volume_lock = Lock(name, SHARED_LOCK);
|
||||||
|
if (volume_lock)
|
||||||
|
{
|
||||||
|
Ajouter_lecteur(device_name[0],LECTEUR_HDD,name);
|
||||||
|
UnLock(volume_lock);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dosList = NextDosEntry(dosList, LDF_VOLUMES);
|
||||||
|
}
|
||||||
|
|
||||||
|
UnLockDosList(lockDosListFlags);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#elif defined (__WIN32__)
|
#elif defined (__WIN32__)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user