diff -Naur ClanLib-0.6.5-old/Sources/Sound/Sound/ClanSound/cdaudio_linux.cpp ClanLib-0.6.5-new/Sources/Sound/Sound/ClanSound/cdaudio_linux.cpp --- ClanLib-0.6.5-old/Sources/Sound/Sound/ClanSound/cdaudio_linux.cpp 2002-06-22 13:58:11.000000000 +0100 +++ ClanLib-0.6.5-new/Sources/Sound/Sound/ClanSound/cdaudio_linux.cpp 2006-05-31 15:00:20.000000000 +0100 @@ -19,7 +19,7 @@ #include #ifndef Solaris // we'll need to define Solaris -#include // there's no fstab.h on Solaris... +#include // not sure if mntent.h is on Solaris... #else #include //...but vfstab.h #endif @@ -82,17 +82,17 @@ // We start by looking the mounttab: -#ifdef Solaris FILE *f_mnttab = fopen("/etc/mnttab", "r"); +#ifdef Solaris vfstab *mount_file; getvfsent(f_mnttab, mount_file); #else - fstab *mount_file = getfsent(); + mntent *mount_file = getmntent(f_mnttab); #endif while(mount_file != NULL) { #ifndef Solaris - if(strncmp(mount_file->fs_vfstype,"iso9660",7)==0) + if(strncmp(mount_file->mnt_type,"iso9660",7)==0) #else if(strncmp(mount_file->vfs_fstype,"iso9660",7)==0) // ugly code... suggestions ? #endif @@ -100,7 +100,7 @@ try { #ifndef Solaris - CL_CDAudio::cd_drives.push_back(new CL_CDDrive_Linux(mount_file->fs_spec)); + CL_CDAudio::cd_drives.push_back(new CL_CDDrive_Linux(mount_file->mnt_fsname)); #else CL_CDAudio::cd_drives.push_back(new CL_CDDrive_Linux(mount_file->vfs_special)); #endif @@ -112,14 +112,14 @@ } } #ifndef Solaris - mount_file = getfsent(); + mount_file = getmntent(f_mnttab); #else getvfsent(f_mnttab, mount_file); #endif // cout << mount_file->fs_vfstype << endl; } #ifndef Solaris - endfsent(); + endmntent(f_mnttab); #else fclose(f_mnttab); #endif