compiles (doesn't support everything yet)

This commit is contained in:
Glenn Maynard
2005-02-06 05:46:07 +00:00
parent d93d2d1681
commit d14ea1ee41
@@ -213,8 +213,7 @@ bool MemoryCardDriverThreaded_Linux::DoOneUpdate( bool bMount, vector<UsbStorage
for( unsigned i=0; i<m_vDevicesLastSeen.size(); i++ ) for( unsigned i=0; i<m_vDevicesLastSeen.size(); i++ )
{ {
UsbStorageDevice &d = m_vDevicesLastSeen[i]; UsbStorageDevice &d = m_vDevicesLastSeen[i];
d.bNeedsWriteTest = false; d.m_State = UsbStorageDevice::STATE_READY;
d.bWriteTestSucceeded = true;
} }
if( false ) if( false )
@@ -232,15 +231,11 @@ bool MemoryCardDriverThreaded_Linux::DoOneUpdate( bool bMount, vector<UsbStorage
for( unsigned i=0; i<m_vDevicesLastSeen.size(); i++ ) for( unsigned i=0; i<m_vDevicesLastSeen.size(); i++ )
{ {
UsbStorageDevice &d = m_vDevicesLastSeen[i]; UsbStorageDevice &d = m_vDevicesLastSeen[i];
if( !d.bNeedsWriteTest ) if( d.m_State != UsbStorageDevice::STATE_CHECKING )
continue; // skip continue; // skip
bDidAnyMounts = true; bDidAnyMounts = true;
d.bNeedsWriteTest = false;
d.bWriteTestSucceeded = true;
CString sCommand; CString sCommand;
// unmount this device before trying to mount it. If this device // unmount this device before trying to mount it. If this device
@@ -256,7 +251,10 @@ bool MemoryCardDriverThreaded_Linux::DoOneUpdate( bool bMount, vector<UsbStorage
bool bMountedSuccessfully = ExecuteCommand( sCommand ); bool bMountedSuccessfully = ExecuteCommand( sCommand );
LOG->Trace( "mount new connect %i/%i done", i, vConnects.size() ); LOG->Trace( "mount new connect %i/%i done", i, vConnects.size() );
d.bWriteTestSucceeded = bMountedSuccessfully && TestWrite( d.sOsMountDir ); if( bMountedSuccessfully && TestWrite( d.sOsMountDir ) )
d.m_State = UsbStorageDevice::STATE_READY;
else
d.m_State = UsbStorageDevice::STATE_WRITE_ERROR;
// read name // read name
this->Mount( &d ); this->Mount( &d );
@@ -267,7 +265,7 @@ bool MemoryCardDriverThreaded_Linux::DoOneUpdate( bool bMount, vector<UsbStorage
profile.LoadEditableDataFromDir( sProfileDir ); profile.LoadEditableDataFromDir( sProfileDir );
d.sName = profile.GetDisplayName(); d.sName = profile.GetDisplayName();
LOG->Trace( "WriteTest: %s, Name: %s", d.bWriteTestSucceeded ? "succeeded" : "failed", d.sName.c_str() ); LOG->Trace( "WriteTest: %s, Name: %s", d.m_State == UsbStorageDevice::STATE_WRITE_ERROR? "failed":"succeeded", d.sName.c_str() );
} }
} }
@@ -525,9 +523,9 @@ bool MemoryCardDriverThreaded_Linux::Mount( UsbStorageDevice* pDevice )
LOG->Trace( "hack mount (%s)", sCommand.c_str() ); LOG->Trace( "hack mount (%s)", sCommand.c_str() );
bool bMountedSuccessfully = ExecuteCommand( sCommand ); bool bMountedSuccessfully = ExecuteCommand( sCommand );
pDevice->bWriteTestSucceeded = bMountedSuccessfully && TestWrite( pDevice->sOsMountDir ); // pDevice->bWriteTestSucceeded = bMountedSuccessfully && TestWrite( pDevice->sOsMountDir );
//
LOG->Trace( "WriteTest: %s, Name: %s", pDevice->bWriteTestSucceeded ? "succeeded" : "failed", pDevice->sName.c_str() ); // LOG->Trace( "WriteTest: %s, Name: %s", pDevice->bWriteTestSucceeded ? "succeeded" : "failed", pDevice->sName.c_str() );
return bMountedSuccessfully; return bMountedSuccessfully;
} }