From a424dee1b10060a7879fd33f2013b1613c4fbe92 Mon Sep 17 00:00:00 2001 From: N2614 Date: Wed, 9 Mar 2011 07:52:08 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=AC=E3=83=93=E3=83=A5=E3=83=BC=E5=8F=8D?= =?UTF-8?q?=E6=98=A0=20wchar=5Ft*=E3=81=AB=E3=81=AFNULL=E6=96=87=E5=AD=97?= =?UTF-8?q?=E3=81=A7=E3=81=AF=E3=81=AA=E3=81=8FNULL=E3=83=9D=E3=82=A4?= =?UTF-8?q?=E3=83=B3=E3=82=BF=E3=82=92=E4=BB=A3=E5=85=A5=E3=81=99=E3=82=8B?= =?UTF-8?q?=20=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E8=AA=AD=E3=81=BF?= =?UTF-8?q?=E5=8F=96=E3=82=8A=E3=83=90=E3=83=83=E3=83=95=E3=82=A1=E3=82=92?= =?UTF-8?q?NULL=E7=B5=82=E7=AB=AF=E3=81=99=E3=82=8B=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_Repair@103 385bec56-5757-e545-9c3a-d8741f4650f1 --- trunk/ConsoleDataMigration/common/configLoader.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/trunk/ConsoleDataMigration/common/configLoader.cpp b/trunk/ConsoleDataMigration/common/configLoader.cpp index c32c04a..b262ba9 100644 --- a/trunk/ConsoleDataMigration/common/configLoader.cpp +++ b/trunk/ConsoleDataMigration/common/configLoader.cpp @@ -14,7 +14,7 @@ Result ConfigFileLoader::Initialize(const wchar_t* fileName, void* buffer, const NN_UTIL_RETURN_IF_FAILED(fi.TryGetSize(&fileSize)); // NULL終端ぶん読めるサイズを減らす - if (fileSize > bufferSize - 2) + if (fileSize > bufferSize - sizeof(wchar_t)) { NN_TLOG_("Too Large File\n"); return Result(nn::Result::LEVEL_FATAL, nn::Result::SUMMARY_OUT_OF_RESOURCE, nn::Result::MODULE_COMMON, nn::Result::DESCRIPTION_TOO_LARGE); @@ -22,7 +22,7 @@ Result ConfigFileLoader::Initialize(const wchar_t* fileName, void* buffer, const m_Buffer = static_cast(buffer); NN_UTIL_RETURN_IF_FAILED(fi.TryRead(&m_UsedBufferSize, m_Buffer, fileSize)); - + NN_LOG("config size = %d\n", m_UsedBufferSize); return ParseData(); } @@ -52,7 +52,8 @@ Result ConfigFileLoader::ParseData() m_ParamNum = 0; m_ParamName[m_ParamNum] = &(m_Buffer[pos]); - m_ParamValue[m_ParamNum] = L'\0'; + m_ParamValue[m_ParamNum] = L""; + m_Buffer[m_UsedBufferSize / sizeof(wchar_t)] = L'\0'; // NULL終端しておく // ダブルクウォート中なら : も文字として読み取る bool inEscape = false; @@ -112,7 +113,7 @@ Result ConfigFileLoader::ParseData() m_Buffer[pos] = L'\0'; m_ParamName[m_ParamNum] = &(m_Buffer[pos + 1]); - m_ParamValue[m_ParamNum] = L'\0'; + m_ParamValue[m_ParamNum] = L""; } break; @@ -155,14 +156,14 @@ const wchar_t *ConfigFileLoader::ReadAsWChar(const wchar_t *paramName) { NN_LOG("Unknown Parameter Name %ls\n", paramName); } - return (idx < 0) ? L'\0' : m_ParamValue[idx]; + return (idx < 0) ? NULL : m_ParamValue[idx]; } const char *ConfigFileLoader::ReadAsChar(const wchar_t *paramName) { memset(m_ReadCharBuffer, 0, sizeof(m_ReadCharBuffer)); const wchar_t *value = ReadAsWChar(paramName); - if(value == L'\0') + if(value == NULL) { return NULL; }