From fd154940eddc54e556d6bfb5147cedbda4750c3e Mon Sep 17 00:00:00 2001 From: Shauren Date: Mon, 6 Feb 2023 20:08:39 +0100 Subject: Dep/CascLib: Update to ladislav-zezula/CascLib@a5080b5794027a25d98aa6024b2bef17d06fe0ea --- dep/CascLib/src/common/Csv.cpp | 37 ++++++++++++++----------------------- 1 file changed, 14 insertions(+), 23 deletions(-) (limited to 'dep/CascLib/src/common/Csv.cpp') diff --git a/dep/CascLib/src/common/Csv.cpp b/dep/CascLib/src/common/Csv.cpp index 589c711571a..ba333399479 100644 --- a/dep/CascLib/src/common/Csv.cpp +++ b/dep/CascLib/src/common/Csv.cpp @@ -42,7 +42,7 @@ static char * NextColumn_Default(void * /* pvUserData */, char * szColumn) szColumn++; // Terminate the column - if (szColumn[0] == '|') + if(szColumn[0] == '|') { *szColumn++ = 0; return szColumn; @@ -158,7 +158,6 @@ CASC_CSV::CASC_CSV(size_t nLinesMax, bool bHasHeader) m_pvUserData = NULL; m_szCsvFile = NULL; m_szCsvPtr = NULL; - m_nCsvFile = 0; m_nLines = 0; m_bHasHeader = bHasHeader; @@ -185,8 +184,9 @@ CASC_CSV::CASC_CSV(size_t nLinesMax, bool bHasHeader) CASC_CSV::~CASC_CSV() { if(m_pLines != NULL) + { delete[] m_pLines; - CASC_FREE(m_szCsvFile); + } } DWORD CASC_CSV::SetNextLineProc(CASC_CSV_NEXTPROC PfnNextLineProc, CASC_CSV_NEXTPROC PfnNextColProc, void * pvUserData) @@ -206,24 +206,18 @@ DWORD CASC_CSV::SetNextLineProc(CASC_CSV_NEXTPROC PfnNextLineProc, CASC_CSV_NEXT DWORD CASC_CSV::Load(LPCTSTR szFileName) { - DWORD cbFileData = 0; - DWORD dwErrCode = ERROR_SUCCESS; + DWORD dwErrCode; - m_szCsvFile = (char *)LoadFileToMemory(szFileName, &cbFileData); - if (m_szCsvFile != NULL) + dwErrCode = LoadFileToMemory(szFileName, CsvFile); + if(dwErrCode == ERROR_SUCCESS) { // Assign the data to the CSV object + m_szCsvFile = (char *)CsvFile.pbData; m_szCsvPtr = m_szCsvFile; - m_nCsvFile = cbFileData; // Parse the data dwErrCode = ParseCsvData() ? ERROR_SUCCESS : ERROR_BAD_FORMAT; } - else - { - dwErrCode = GetCascError(); - } - return dwErrCode; } @@ -231,19 +225,16 @@ DWORD CASC_CSV::Load(LPBYTE pbData, size_t cbData) { DWORD dwErrCode = ERROR_NOT_ENOUGH_MEMORY; - m_szCsvFile = CASC_ALLOC(cbData + 1); - if (m_szCsvFile != NULL) + if((dwErrCode = CsvFile.SetData(pbData, cbData)) == ERROR_SUCCESS) { // Copy the entire data and terminate them with zero - memcpy(m_szCsvFile, pbData, cbData); - m_szCsvFile[cbData] = 0; + m_szCsvFile = (char *)CsvFile.pbData; + m_szCsvFile[CsvFile.cbData] = 0; m_szCsvPtr = m_szCsvFile; - m_nCsvFile = cbData; // Parse the data dwErrCode = ParseCsvData() ? ERROR_SUCCESS : ERROR_BAD_FORMAT; } - return dwErrCode; } @@ -303,7 +294,7 @@ bool CASC_CSV::LoadNextLine(CASC_CSV_LINE & Line) m_szCsvPtr = PfnNextLine(m_pvUserData, m_szCsvPtr); // Initialize the line - if (Line.SetLine(this, szCsvLine)) + if(Line.SetLine(this, szCsvLine)) return true; } @@ -320,7 +311,7 @@ bool CASC_CSV::ParseCsvData() if(m_bHasHeader) { // Load the current line to the header - if (!LoadNextLine(Header)) + if(!LoadNextLine(Header)) return false; // Initialize the hash table @@ -345,14 +336,14 @@ bool CASC_CSV::ParseCsvData() const CASC_CSV_COLUMN & CASC_CSV::operator[](const char * szColumnName) const { - if (m_pLines == NULL || m_nLines == 0) + if(m_pLines == NULL || m_nLines == 0) return NullColumn; return m_pLines[0][GetColumnIndex(szColumnName)]; } const CASC_CSV_LINE & CASC_CSV::operator[](size_t nIndex) const { - if (m_pLines == NULL || nIndex >= m_nLines) + if(m_pLines == NULL || nIndex >= m_nLines) return NullLine; return m_pLines[nIndex]; } -- cgit v1.2.3