Skip to content

Commit 2e82850

Browse files
committed
improved:read buffer configure
1 parent cd6b3ae commit 2e82850

File tree

1 file changed

+9
-36
lines changed

1 file changed

+9
-36
lines changed

XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp

Lines changed: 9 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -273,21 +273,12 @@ bool CModuleConfigure_Json::ModuleConfigure_Json_VersionFile(LPCXSTR lpszConfigF
273273
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE;
274274
return false;
275275
}
276-
size_t nCount = 0;
277-
XCHAR tszMsgBuffer[4096];
278-
while (1)
279-
{
280-
size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File);
281-
if (nRet <= 0)
282-
{
283-
break;
284-
}
285-
nCount += nRet;
286-
}
276+
XCHAR tszMsgBuffer[8192] = {};
277+
size_t nRet = fread(tszMsgBuffer, 1, sizeof(tszMsgBuffer), pSt_File);
287278
fclose(pSt_File);
288279
//开始解析配置文件
289280
std::unique_ptr<Json::CharReader> const pSt_JsonReader(st_JsonBuilder.newCharReader());
290-
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError))
281+
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nRet, &st_JsonRoot, &st_JsonError))
291282
{
292283
Config_IsErrorOccur = true;
293284
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE;
@@ -353,21 +344,12 @@ bool CModuleConfigure_Json::ModuleConfigure_Json_PluginFile(LPCXSTR lpszConfigFi
353344
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE;
354345
return false;
355346
}
356-
size_t nCount = 0;
357-
XCHAR tszMsgBuffer[4096];
358-
while (1)
359-
{
360-
size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File);
361-
if (nRet <= 0)
362-
{
363-
break;
364-
}
365-
nCount += nRet;
366-
}
347+
XCHAR tszMsgBuffer[8192] = {};
348+
size_t nRet = fread(tszMsgBuffer, 1, sizeof(tszMsgBuffer), pSt_File);
367349
fclose(pSt_File);
368350
//开始解析配置文件
369351
std::unique_ptr<Json::CharReader> const pSt_JsonReader(st_JsonBuilder.newCharReader());
370-
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError))
352+
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nRet, &st_JsonRoot, &st_JsonError))
371353
{
372354
Config_IsErrorOccur = true;
373355
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE;
@@ -456,21 +438,12 @@ bool CModuleConfigure_Json::ModuleConfigure_Json_DeamonList(LPCXSTR lpszConfigFi
456438
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE;
457439
return false;
458440
}
459-
int nCount = 0;
460-
XCHAR tszMsgBuffer[4096];
461-
while (1)
462-
{
463-
int nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File);
464-
if (nRet <= 0)
465-
{
466-
break;
467-
}
468-
nCount += nRet;
469-
}
441+
XCHAR tszMsgBuffer[8192] = {};
442+
size_t nRet = fread(tszMsgBuffer, 1, sizeof(tszMsgBuffer), pSt_File);
470443
fclose(pSt_File);
471444

472445
std::unique_ptr<Json::CharReader> const pSt_JsonReader(st_JsonBuilder.newCharReader());
473-
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError))
446+
if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nRet, &st_JsonRoot, &st_JsonError))
474447
{
475448
Config_IsErrorOccur = true;
476449
Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE;

0 commit comments

Comments
 (0)