diff --git a/Minecraft.Client/Common/DLC/DLCManager.cpp b/Minecraft.Client/Common/DLC/DLCManager.cpp index aa219db5..9d4c07ca 100644 --- a/Minecraft.Client/Common/DLC/DLCManager.cpp +++ b/Minecraft.Client/Common/DLC/DLCManager.cpp @@ -406,6 +406,12 @@ bool DLCManager::processDLCDataFile(DWORD &dwFilesProcessed, PBYTE pbData, DWORD unsigned int uiVersion=*(unsigned int *)pbData; uiCurrentByte+=sizeof(int); + if(uiVersion > CURRENT_DLC_VERSION_NUM) + { + if(pbData!=NULL) delete [] pbData; + app.DebugPrintf("DLC version of %d is newer than this build can read (%d)\n", uiVersion, CURRENT_DLC_VERSION_NUM); + return false; + } if(uiVersion < CURRENT_DLC_VERSION_NUM) { if(pbData!=NULL) delete [] pbData; @@ -613,6 +619,11 @@ DWORD DLCManager::retrievePackID(PBYTE pbData, DWORD dwLength, DLCPack *pack) unsigned int uiVersion=*(unsigned int *)pbData; uiCurrentByte+=sizeof(int); + if(uiVersion > CURRENT_DLC_VERSION_NUM) + { + app.DebugPrintf("DLC version of %d is newer than this build can read (%d)\n", uiVersion, CURRENT_DLC_VERSION_NUM); + return 0; + } if(uiVersion < CURRENT_DLC_VERSION_NUM) { app.DebugPrintf("DLC version of %d is too old to be read\n", uiVersion); diff --git a/Minecraft.Client/Common/XUI/XUI_Scene_AbstractContainer.cpp b/Minecraft.Client/Common/XUI/XUI_Scene_AbstractContainer.cpp index 15ec6f58..502033e9 100644 --- a/Minecraft.Client/Common/XUI/XUI_Scene_AbstractContainer.cpp +++ b/Minecraft.Client/Common/XUI/XUI_Scene_AbstractContainer.cpp @@ -454,12 +454,7 @@ void CXuiSceneAbstractContainer::SetPointerText(vector *description, return; } - wstring combinedText; - for(size_t i = 0; i < description->size(); ++i) - { - combinedText += (*description)[i].text; - if(i + 1 < description->size()) combinedText += L"\n"; - } + wstring combinedText = HtmlString::Compose(description); vector unformattedStrings; for(size_t i = 0; i < description->size(); ++i)