Browse Source

Merge pull request #851 from AJenbo/MAX_PATH

Apply MAX_PATH
pull/88/head
Robin Eklind 7 years ago committed by GitHub
parent
commit
065e7f50f4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 104
      DiabloUI/connect.cpp
  2. 4
      Source/control.cpp
  3. 2
      Source/control.h
  4. 4
      Source/diablo.cpp
  5. 2
      Source/error.cpp
  6. 2
      Source/error.h
  7. 34
      Source/init.cpp
  8. 10
      Source/init.h
  9. 12
      Source/logging.cpp
  10. 2
      Source/logging.h
  11. 2
      Source/mpqapi.cpp

104
DiabloUI/connect.cpp

@ -75,117 +75,117 @@ BOOL __cdecl Connect_LoadGFXAndStuff()
BOOL __stdcall UiArtCallback(int game_type, unsigned int art_code, PALETTEENTRY *pPalette, BYTE *pBuffer, DWORD dwBuffersize, DWORD *pdwWidth, DWORD *pdwHeight, DWORD *pdwBpp)
{
BOOL result; // eax
char pszFileName[260]; // [esp+8h] [ebp-104h]
char pszFileName[MAX_PATH]; // [esp+8h] [ebp-104h]
pszFileName[0] = nullcharacter;
memset(&pszFileName[1], 0, 0x100u);
*(_WORD *)&pszFileName[257] = 0;
pszFileName[259] = 0;
SStrCopy(pszFileName, "ui_art\\", 260);
SStrCopy(pszFileName, "ui_art\\", sizeof(pszFileName));
if (game_type == 'BNET') {
if (art_code > 0x80000004) {
switch (art_code) {
case 0x80000005:
SStrPack(pszFileName, "bnconnbg.pcx", 0x104u);
SStrPack(pszFileName, "bnconnbg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000006:
SStrPack(pszFileName, "bnselchn.pcx", 0x104u);
SStrPack(pszFileName, "bnselchn.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000007:
SStrPack(pszFileName, "bnlogin.pcx", 0x104u);
SStrPack(pszFileName, "bnlogin.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000008:
SStrPack(pszFileName, "newaccount.pcx", 0x104u);
SStrPack(pszFileName, "newaccount.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000009:
SStrPack(pszFileName, "changepassword.pcx", 0x104u);
SStrPack(pszFileName, "changepassword.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x8000000A:
SStrPack(pszFileName, "bnladder.pcx", 0x104u);
SStrPack(pszFileName, "bnladder.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x8000000B:
SStrPack(pszFileName, "badconn.pcx", 0x104u);
SStrPack(pszFileName, "badconn.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x8000000C:
SStrPack(pszFileName, "welcome.pcx", 0x104u);
SStrPack(pszFileName, "welcome.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x8000000D:
SStrPack(pszFileName, "lepopup.pcx", 0x104u);
SStrPack(pszFileName, "lepopup.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x8000000E:
SStrPack(pszFileName, "tos.pcx", 0x104u);
SStrPack(pszFileName, "tos.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
} else {
if (art_code == 0x80000004) {
SStrPack(pszFileName, "redlag.pcx", 0x104u);
SStrPack(pszFileName, "redlag.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
if (art_code > 7) {
switch (art_code) {
case 8u:
LABEL_48:
SStrPack(pszFileName, "but_lrg.pcx", 0x104u);
SStrPack(pszFileName, "but_lrg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000000:
SStrPack(pszFileName, "bnbuttns.pcx", 0x104u);
SStrPack(pszFileName, "bnbuttns.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000001:
SStrPack(pszFileName, "chat_bkg.pcx", 0x104u);
SStrPack(pszFileName, "chat_bkg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000002:
SStrPack(pszFileName, "greenlag.pcx", 0x104u);
SStrPack(pszFileName, "greenlag.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x80000003:
SStrPack(pszFileName, "yellolag.pcx", 0x104u);
SStrPack(pszFileName, "yellolag.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
} else {
switch (art_code) {
case 7u:
LABEL_47:
SStrPack(pszFileName, "but_med.pcx", 0x104u);
SStrPack(pszFileName, "but_med.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0u:
SStrPack(pszFileName, "bn_bkg.pcx", 0x104u);
SStrPack(pszFileName, "bn_bkg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 2u:
SStrPack(pszFileName, "bnjoinbg.pcx", 0x104u);
SStrPack(pszFileName, "bnjoinbg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 3u:
SStrPack(pszFileName, "hpopup.pcx", 0x104u);
SStrPack(pszFileName, "hpopup.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 5u:
LABEL_46:
SStrPack(pszFileName, "but_xsm.pcx", 0x104u);
SStrPack(pszFileName, "but_xsm.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 6u:
LABEL_11:
SStrPack(pszFileName, "but_sml.pcx", 0x104u);
SStrPack(pszFileName, "but_sml.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
}
}
} else if (game_type == 'IPXN') {
if (!art_code) {
SStrPack(pszFileName, "ipx_bkg.pcx", 0x104u);
SStrPack(pszFileName, "ipx_bkg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
} else if (!game_type && !art_code) {
SStrPack(pszFileName, "connect.pcx", 0x104u);
SStrPack(pszFileName, "connect.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
}
switch (art_code) {
case 0u:
case 2u:
SStrPack(pszFileName, "menu.pcx", 0x104u);
SStrPack(pszFileName, "menu.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 1u:
case 8u:
goto LABEL_48;
case 3u:
case 4u:
SStrPack(pszFileName, "lpopup.pcx", 0x104u);
SStrPack(pszFileName, "lpopup.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 5u:
goto LABEL_46;
@ -194,76 +194,76 @@ BOOL __stdcall UiArtCallback(int game_type, unsigned int art_code, PALETTEENTRY
case 7u:
goto LABEL_47;
case 9u:
SStrPack(pszFileName, "xsmlogo.pcx", 0x104u);
SStrPack(pszFileName, "xsmlogo.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xAu:
SStrPack(pszFileName, "prog_bg.pcx", 0x104u);
SStrPack(pszFileName, "prog_bg.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xBu:
SStrPack(pszFileName, "prog_fil.pcx", 0x104u);
SStrPack(pszFileName, "prog_fil.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xCu:
SStrPack(pszFileName, "spopup.pcx", 0x104u);
SStrPack(pszFileName, "spopup.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xDu:
SStrPack(pszFileName, "scrlarrw.pcx", 0x104u);
SStrPack(pszFileName, "scrlarrw.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xEu:
SStrPack(pszFileName, "scrlthmb.pcx", 0x104u);
SStrPack(pszFileName, "scrlthmb.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0xFu:
SStrPack(pszFileName, "scrlbar.pcx", 0x104u);
SStrPack(pszFileName, "scrlbar.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x10u:
SStrPack(pszFileName, "cmel.pcx", 0x104u);
SStrPack(pszFileName, "cmel.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x11u:
SStrPack(pszFileName, "cmml.pcx", 0x104u);
SStrPack(pszFileName, "cmml.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x12u:
SStrPack(pszFileName, "cmbl.pcx", 0x104u);
SStrPack(pszFileName, "cmbl.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x13u:
SStrPack(pszFileName, "cmec.pcx", 0x104u);
SStrPack(pszFileName, "cmec.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x14u:
SStrPack(pszFileName, "cmmc.pcx", 0x104u);
SStrPack(pszFileName, "cmmc.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x15u:
SStrPack(pszFileName, "cmbc.pcx", 0x104u);
SStrPack(pszFileName, "cmbc.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x16u:
SStrPack(pszFileName, "cmer.pcx", 0x104u);
SStrPack(pszFileName, "cmer.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x17u:
SStrPack(pszFileName, "cmmr.pcx", 0x104u);
SStrPack(pszFileName, "cmmr.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x18u:
SStrPack(pszFileName, "cmbr.pcx", 0x104u);
SStrPack(pszFileName, "cmbr.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x19u:
SStrPack(pszFileName, "slgray.pcx", 0x104u);
SStrPack(pszFileName, "slgray.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x1Au:
SStrPack(pszFileName, "slthumb.pcx", 0x104u);
SStrPack(pszFileName, "slthumb.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x1Bu:
SStrPack(pszFileName, "slfocus.pcx", 0x104u);
SStrPack(pszFileName, "slfocus.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x1Cu:
SStrPack(pszFileName, "slleft.pcx", 0x104u);
SStrPack(pszFileName, "slleft.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x1Du:
SStrPack(pszFileName, "slmiddle.pcx", 0x104u);
SStrPack(pszFileName, "slmiddle.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x1Eu:
SStrPack(pszFileName, "slright.pcx", 0x104u);
SStrPack(pszFileName, "slright.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x20u:
SStrPack(pszFileName, "but_checkoff.pcx", 0x104u);
SStrPack(pszFileName, "but_checkoff.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
case 0x21u:
SStrPack(pszFileName, "but_checkon.pcx", 0x104u);
SStrPack(pszFileName, "but_checkon.pcx", sizeof(pszFileName));
return SBmpLoadImage(pszFileName, pPalette, pBuffer, dwBuffersize, pdwWidth, pdwHeight, pdwBpp);
default:
result = 0;

4
Source/control.cpp

@ -18,7 +18,7 @@ char sgszTalkSave[8][80];
int dropGoldValue; // idb
BOOL drawmanaflag; // idb
BOOL chrbtnactive;
char sgszTalkMsg[80];
char sgszTalkMsg[MAX_SEND_STR_LEN];
BYTE *pPanelText;
int frame_4B8800; // idb
BYTE *pLifeBuff;
@ -46,7 +46,7 @@ int sbookflag; // weak
int chrflag;
int drawbtnflag; // idb
void *pSpellBkCel;
char infostr[260];
char infostr[MAX_PATH];
int numpanbtns; // weak
void *pStatusPanel;
char panelstr[256];

2
Source/control.h

@ -41,7 +41,7 @@ extern int sbookflag; // weak
extern int chrflag;
extern int drawbtnflag; // idb
extern void *pSpellBkCel;
extern char infostr[260];
extern char infostr[MAX_PATH];
extern int numpanbtns; // weak
extern void *pStatusPanel;
extern char panelstr[256];

4
Source/diablo.cpp

@ -477,7 +477,7 @@ void __fastcall diablo_reload_process(HMODULE hModule)
_DWORD *v5; // esi
HWND v6; // eax
char Name[276]; // [esp+Ch] [ebp-29Ch]
char Filename[260]; // [esp+120h] [ebp-188h]
char Filename[MAX_PATH]; // [esp+120h] [ebp-188h]
STARTUPINFOA si; // [esp+224h] [ebp-84h]
SYSTEM_INFO sinf; // [esp+268h] [ebp-40h]
PROCESS_INFORMATION pi; // [esp+28Ch] [ebp-1Ch]
@ -489,7 +489,7 @@ void __fastcall diablo_reload_process(HMODULE hModule)
memset(Filename, 0, sizeof(Filename));
// *(_WORD *)&Filename[257] = 0;
// Filename[259] = 0;
GetModuleFileName(hModule, Filename, 0x104u);
GetModuleFileName(hModule, Filename, sizeof(Filename));
wsprintf(Name, "Reload-%s", Filename);
for (i = Name; *i; ++i) {
if (*i == '\\')

2
Source/error.cpp

@ -2,7 +2,7 @@
#include "../types.h"
char msgtable[80];
char msgtable[MAX_SEND_STR_LEN];
char msgdelay;
char msgflag;
char msgcnt;

2
Source/error.h

@ -2,7 +2,7 @@
#ifndef __ERROR_H__
#define __ERROR_H__
extern char msgtable[80];
extern char msgtable[MAX_SEND_STR_LEN];
extern char msgdelay;
extern char msgflag;
extern char msgcnt;

34
Source/init.cpp

@ -4,20 +4,20 @@
_SNETVERSIONDATA fileinfo;
int gbActive; // weak
char diablo_exe_path[260];
char diablo_exe_path[MAX_PATH];
HANDLE unused_mpq;
char patch_rt_mpq_path[260];
char patch_rt_mpq_path[MAX_PATH];
WNDPROC CurrentProc;
HANDLE diabdat_mpq;
char diabdat_mpq_path[260];
char diabdat_mpq_path[MAX_PATH];
HANDLE patch_rt_mpq;
int killed_mom_parent; // weak
BOOLEAN screensaver_enabled_prev;
/* data */
char gszVersionNumber[260] = "internal version unknown";
char gszProductName[260] = "Diablo v1.09";
char gszVersionNumber[MAX_PATH] = "internal version unknown";
char gszProductName[MAX_PATH] = "Diablo v1.09";
void __fastcall init_cleanup(BOOL show_cursor)
{
@ -78,8 +78,8 @@ void __fastcall init_run_office(char *dir)
HANDLE v2; // ebx
BOOLEAN v3; // zf
HWND v4; // eax
char Directory[260]; // [esp+8h] [ebp-348h]
char FileName[260]; // [esp+10Ch] [ebp-244h]
char Directory[MAX_PATH]; // [esp+8h] [ebp-348h]
char FileName[MAX_PATH]; // [esp+10Ch] [ebp-244h]
struct _WIN32_FIND_DATAA FindFileData; // [esp+210h] [ebp-140h]
v1 = dir;
@ -261,20 +261,20 @@ HANDLE __fastcall init_test_access(char *mpq_path, char *mpq_name, char *reg_loc
{
char *v5; // esi
char *v7; // eax
char Filename[260]; // [esp+Ch] [ebp-314h]
char Buffer[260]; // [esp+110h] [ebp-210h]
char v15[260]; // [esp+214h] [ebp-10Ch]
char Filename[MAX_PATH]; // [esp+Ch] [ebp-314h]
char Buffer[MAX_PATH]; // [esp+110h] [ebp-210h]
char v15[MAX_PATH]; // [esp+214h] [ebp-10Ch]
char *mpq_namea; // [esp+318h] [ebp-8h]
HANDLE archive; // [esp+31Ch] [ebp-4h]
mpq_namea = mpq_name;
v5 = mpq_path;
if (!GetCurrentDirectory(0x104u, Buffer))
if (!GetCurrentDirectory(sizeof(Buffer), Buffer))
app_fatal("Can't get program path");
init_strip_trailing_slash(Buffer);
if (!SFileSetBasePath(Buffer))
app_fatal("SFileSetBasePath");
if (!GetModuleFileName(ghInst, Filename, 0x104u))
if (!GetModuleFileName(ghInst, Filename, sizeof(Filename)))
app_fatal("Can't get program name");
v7 = strrchr(Filename, '\\');
if (v7)
@ -300,7 +300,7 @@ HANDLE __fastcall init_test_access(char *mpq_path, char *mpq_name, char *reg_loc
}
v15[0] = 0;
if (reg_loc) {
if (SRegLoadString("Archives", (const char *)reg_loc, 0, v15, 260)) {
if (SRegLoadString("Archives", (const char *)reg_loc, 0, v15, sizeof(v15))) {
init_strip_trailing_slash(v15);
strcpy(v5, v15);
strcat(v5, mpq_namea);
@ -337,13 +337,13 @@ int __fastcall init_read_test_file(char *mpq_path, char *mpq_name, int flags, HA
DWORD v5; // eax
const char *v7; // ebx
const char *v8; // esi
char Buffer[260]; // [esp+Ch] [ebp-108h]
char Buffer[MAX_PATH]; // [esp+Ch] [ebp-108h]
char *mpq_patha; // [esp+110h] [ebp-4h]
v4 = mpq_name;
mpq_patha = mpq_path;
v5 = GetLogicalDriveStrings(0x104u, Buffer);
if (!v5 || v5 > 0x104)
v5 = GetLogicalDriveStrings(sizeof(Buffer), Buffer);
if (!v5 || v5 > sizeof(Buffer))
return 0;
while (*v4 == '\\')
++v4;
@ -374,7 +374,7 @@ void __cdecl init_get_file_info()
DWORD dwHandle; // [esp+Ch] [ebp-8h]
VS_FIXEDFILEINFO *lpBuffer; // [esp+10h] [ebp-4h]
if (GetModuleFileName(ghInst, diablo_exe_path, 0x104u)) {
if (GetModuleFileName(ghInst, diablo_exe_path, sizeof(diablo_exe_path))) {
v0 = GetFileVersionInfoSize(diablo_exe_path, &dwHandle);
v1 = v0;
if (v0) {

10
Source/init.h

@ -4,12 +4,12 @@
extern _SNETVERSIONDATA fileinfo;
extern int gbActive; // weak
extern char diablo_exe_path[260];
extern char diablo_exe_path[MAX_PATH];
extern HANDLE unused_mpq;
extern char patch_rt_mpq_path[260];
extern char patch_rt_mpq_path[MAX_PATH];
extern WNDPROC CurrentProc;
extern HANDLE diabdat_mpq;
extern char diabdat_mpq_path[260];
extern char diabdat_mpq_path[MAX_PATH];
extern HANDLE patch_rt_mpq;
extern int killed_mom_parent; // weak
extern BOOLEAN screensaver_enabled_prev;
@ -37,7 +37,7 @@ extern const int init_inf; // weak
/* data */
extern char gszVersionNumber[260];
extern char gszProductName[260];
extern char gszVersionNumber[MAX_PATH];
extern char gszProductName[MAX_PATH];
#endif /* __INIT_H__ */

12
Source/logging.cpp

@ -3,7 +3,7 @@
#include "../types.h"
static CRITICAL_SECTION sgMemCrit;
CHAR FileName[260]; // idb
CHAR FileName[MAX_PATH]; // idb
char log_buffer[388];
LPCVOID lpAddress; // idb
DWORD nNumberOfBytesToWrite; // idb
@ -73,13 +73,13 @@ HANDLE __cdecl log_create()
HANDLE v1; // ebx
HANDLE v2; // eax
char *v3; // edx
char Filename[260]; // [esp+Ch] [ebp-15Ch]
char Filename[MAX_PATH]; // [esp+Ch] [ebp-15Ch]
VS_FIXEDFILEINFO file_info; // [esp+110h] [ebp-58h]
char Buffer[32]; // [esp+144h] [ebp-24h]
DWORD pcbBuffer; // [esp+164h] [ebp-4h]
if (log_not_created) {
if (GetModuleFileName(0, Filename, 0x104u) && (v0 = strrchr(Filename, '\\')) != 0)
if (GetModuleFileName(0, Filename, sizeof(Filename)) && (v0 = strrchr(Filename, '\\')) != 0)
v0[1] = 0;
else
Filename[0] = 0;
@ -89,7 +89,7 @@ HANDLE __cdecl log_create()
log_get_version(&file_info);
_snprintf(
FileName,
0x104u,
sizeof(Filename),
"%s%s%02u%02u%02u.ERR",
Filename,
Buffer,
@ -125,7 +125,7 @@ void __fastcall log_get_version(VS_FIXEDFILEINFO *file_info)
DWORD v2; // esi
void *v3; // ebx
unsigned int v4; // eax
char Filename[260]; // [esp+8h] [ebp-114h]
char Filename[MAX_PATH]; // [esp+8h] [ebp-114h]
DWORD dwHandle; // [esp+10Ch] [ebp-10h]
LPVOID lpBuffer; // [esp+110h] [ebp-Ch]
unsigned int puLen; // [esp+114h] [ebp-8h]
@ -133,7 +133,7 @@ void __fastcall log_get_version(VS_FIXEDFILEINFO *file_info)
v9 = file_info;
memset(file_info, 0, 0x34u);
if (GetModuleFileName(0, Filename, 0x104u)) {
if (GetModuleFileName(0, Filename, sizeof(Filename))) {
v1 = GetFileVersionInfoSize(Filename, &dwHandle);
v2 = v1;
if (v1) {

2
Source/logging.h

@ -2,7 +2,7 @@
#ifndef __LOGGING_H__
#define __LOGGING_H__
extern CHAR FileName[260]; // idb
extern CHAR FileName[MAX_PATH]; // idb
extern char log_buffer[388];
extern LPCVOID lpAddress; // idb
extern DWORD nNumberOfBytesToWrite; // idb

2
Source/mpqapi.cpp

@ -251,7 +251,7 @@ void __fastcall mpqapi_remove_hash_entries(BOOL(__stdcall *fnGetName)(DWORD, cha
{
DWORD dwIndex;
BOOL i;
char pszFileName[260];
char pszFileName[MAX_PATH];
dwIndex = 1;
for (i = fnGetName(0, pszFileName); i; i = fnGetName(dwIndex++, pszFileName)) {

Loading…
Cancel
Save