エージング用branchのr365をマージ

FileStreamをメンバ変数ではなくスタックから確保するように

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@366 385bec56-5757-e545-9c3a-d8741f4650f1
This commit is contained in:
N2614 2011-07-07 06:05:44 +00:00
parent 524ff75ff2
commit 8df0e30666
2 changed files with 16 additions and 14 deletions

View File

@ -60,7 +60,7 @@ nn::Result SdReaderWriter::Finalize()
return result;
}
nn::Result SdReaderWriter::WriteBufCore(const wchar_t* path, void* buf, size_t size)
nn::Result SdReaderWriter::WriteBufCore(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size)
{
NN_ASSERT(path != NULL);
NN_ASSERT(size > 0);
@ -93,11 +93,11 @@ nn::Result SdReaderWriter::WriteBufCore(const wchar_t* path, void* buf, size_t s
return result;
}
nn::Result SdReaderWriter::WriteBuf(const wchar_t* path, void* buf, size_t size)
nn::Result SdReaderWriter::WriteBuf(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size)
{
nn::Result result;
result = WriteBufCore(path, buf, size);
result = WriteBufCore(file, path, buf, size);
NN_UTIL_RETURN_IF_FAILED(result);
result = file.TryFlush();
@ -113,8 +113,9 @@ nn::Result SdReaderWriter::WriteBuf(const wchar_t* path, void* buf, size_t size)
nn::Result SdReaderWriter::WriteBufWithCmac(const wchar_t* path, void* buf, size_t size)
{
nn::Result result;
nn::fs::FileStream file;
result = WriteBufCore(path, buf, size);
result = WriteBufCore(file, path, buf, size);
NN_UTIL_RETURN_IF_FAILED(result);
nn::crypto::Initialize();
@ -141,7 +142,8 @@ nn::Result SdReaderWriter::WriteBufWithCmac(const wchar_t* path, void* buf, size
}
nn::Result SdReaderWriter::ReadBufCore(const wchar_t* path, void* buf, size_t size, size_t* totalSize)
nn::Result SdReaderWriter::ReadBufCore(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size,
size_t* totalSize)
{
NN_ASSERT(path != NULL);
NN_ASSERT(size > 0);
@ -166,11 +168,12 @@ nn::Result SdReaderWriter::ReadBufCore(const wchar_t* path, void* buf, size_t si
return result;
}
nn::Result SdReaderWriter::ReadBuf(const wchar_t* path, void* buf, size_t size, size_t* totalSize)
nn::Result SdReaderWriter::ReadBuf(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size,
size_t* totalSize)
{
nn::Result result;
result = ReadBufCore(path, buf, size, totalSize);
result = ReadBufCore(file, path, buf, size, totalSize);
NN_UTIL_RETURN_IF_FAILED(result);
file.Finalize();
@ -180,10 +183,11 @@ nn::Result SdReaderWriter::ReadBuf(const wchar_t* path, void* buf, size_t size,
nn::Result SdReaderWriter::ReadBufWithCmac(const wchar_t* path, void* buf, size_t size, size_t* totalSize)
{
nn::Result result;
nn::fs::FileStream file;
NN_ASSERT(size > nn::crypto::AES_CMAC_MAC_SIZE);
result = ReadBufCore(path, buf, size, totalSize);
result = ReadBufCore(file, path, buf, size, totalSize);
NN_UTIL_RETURN_IF_FAILED(result);
file.Finalize();

View File

@ -49,18 +49,18 @@ private:
//! @param[in] path sdmc:で始まる出力パス名。予めディレクトリを作っておく必要があります。
//! @param[in] buf 入力データへのポインタ
//! @param[in] size 入力データのサイズ
nn::Result WriteBuf(const wchar_t* path, void* buf, size_t size);
nn::Result WriteBuf(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size);
nn::Result WriteBufCore(const wchar_t*path, void* buf, size_t size);
nn::Result WriteBufCore(nn::fs::FileStream& file, const wchar_t*path, void* buf, size_t size);
//! @brief 渡されたバッファへサイズ分指定されたパス名から読み込みます
//! @param[in] path sdmc:で始まる入力パス名
//! @param[in] buf 出力バッファへのポインタ
//! @param[in] size バッファサイズ
//! @param[out] totalSize 読み込んだデータのサイズ
nn::Result ReadBuf(const wchar_t* path, void* buf, size_t size, size_t* totalSize);
nn::Result ReadBuf(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size, size_t* totalSize);
nn::Result ReadBufCore(const wchar_t* path, void* buf, size_t size, size_t* totalSize);
nn::Result ReadBufCore(nn::fs::FileStream& file, const wchar_t* path, void* buf, size_t size, size_t* totalSize);
//! @brief 初期化します。
nn::Result Initialize();
@ -68,8 +68,6 @@ private:
//! @brief 終了します。
nn::Result Finalize();
nn::fs::FileStream file;
NN_PADDING3;
bool m_IsInitialized;