AKRESULT CAkFileLocationBase::SetLangSpecificDirName( const AkOSChar* in_pszDirName ) { if ( AKPLATFORM::OsStrLen( m_szBasePath ) + AkTemplMax( AKPLATFORM::OsStrLen( m_szBankPath ), AKPLATFORM::OsStrLen( m_szAudioSrcPath ) ) + AKPLATFORM::OsStrLen( in_pszDirName ) >= AK_MAX_PATH ) { return AK_InvalidParameter; } AKPLATFORM::SafeStrCpy( m_szLangSpecificDirName, in_pszDirName, AK_MAX_PATH ); return AK_Success; }
AKRESULT CAkFileLocationBase::SetAudioSrcPath( const AkOSChar* in_pszAudioSrcPath ) { if ( AKPLATFORM::OsStrLen( m_szBasePath ) + AkTemplMax( AKPLATFORM::OsStrLen( m_szBankPath ), AKPLATFORM::OsStrLen( in_pszAudioSrcPath ) ) + AKPLATFORM::OsStrLen( AK::StreamMgr::GetCurrentLanguage() ) + 1 >= AK_MAX_PATH ) { return AK_InvalidParameter; } AKPLATFORM::SafeStrCpy( m_szAudioSrcPath, in_pszAudioSrcPath, AK_MAX_PATH ); return AK_Success; }
AKRESULT CAkFileLocationBase::SetBasePath( const AkOSChar* in_pszBasePath ) { if ( AKPLATFORM::OsStrLen( in_pszBasePath ) + AkTemplMax( AKPLATFORM::OsStrLen( m_szBankPath ), AKPLATFORM::OsStrLen( m_szAudioSrcPath ) ) + AKPLATFORM::OsStrLen( AK::StreamMgr::GetCurrentLanguage() ) + 1 >= AK_MAX_PATH ) { return AK_InvalidParameter; } //Copy the base path EVEN if the directory does not exist. AKPLATFORM::SafeStrCpy( m_szBasePath, in_pszBasePath, AK_MAX_PATH ); AKRESULT eDirectoryResult = CAkFileHelpers::CheckDirectoryExists( in_pszBasePath ); if( eDirectoryResult == AK_Fail ) // AK_NotImplemented could be returned and should be ignored. { return AK_PathNotFound; } return AK_Success; }