rendered paste bodyQString Autodetection::resolveMountPoint(QString device)
{
qDebug() << "Autodetection::resolveMountPoint(QString)" << device;
#if defined(Q_OS_LINUX)
FILE *fp = fopen( "/proc/mounts", "r" );
if( !fp ) return QString("");
char *dev, *dir;
while( fscanf( fp, "%as %as %*s %*s %*s %*s", &dev, &dir ) != EOF )
{
if( QString(dev).startsWith(device) )
{
QString directory = dir;
free( dev );
free( dir );
fclose(fp);
return directory;
}
free( dev );
free( dir );
}
fclose( fp );
#elif defined(Q_OS_MACX)
struct statfs *buf;
char* device;
int i, n;
n = getmntinfo(&buf , MNT_WAIT);
sprintf(dev, "%ss2", device); <-- device is QtString, not char*
for (i=0 ; i < n ; i++)
{
if (strcmp(dev, buf[i].f_mntfromname)==0)
{
QString directory = buf[i].f_mntonname;
return directory;
}
}
#endif
return QString("");
}