diff options
author | elfmz <fenix1905@tut.by> | 2022-09-07 23:19:41 +0300 |
---|---|---|
committer | elfmz <fenix1905@tut.by> | 2022-09-07 23:19:41 +0300 |
commit | d135649cc22210d32270b7d1ab5c89649b319d85 (patch) | |
tree | a22790b175cee1f707e3c1236fb041eb27a127c7 | |
parent | 9082d406e7f5d020d0fb3511c9c14a78db9b4ea3 (diff) |
cosmetic
-rw-r--r-- | multiarc/src/MultiArc.cpp | 18 | ||||
-rw-r--r-- | multiarc/src/MultiArc.hpp | 9 | ||||
-rw-r--r-- | multiarc/src/ma_emu.cpp | 117 | ||||
-rw-r--r-- | utils/include/utils.h | 5 |
4 files changed, 3 insertions, 146 deletions
diff --git a/multiarc/src/MultiArc.cpp b/multiarc/src/MultiArc.cpp index b52c5536..7e1e91ad 100644 --- a/multiarc/src/MultiArc.cpp +++ b/multiarc/src/MultiArc.cpp @@ -3,24 +3,6 @@ #include <string> #include <unistd.h> -#if defined(__GNUC__) -#ifdef __cplusplus -extern "C"{ -#endif - BOOL WINAPI DllMainCRTStartup(HANDLE hDll,DWORD dwReason,LPVOID lpReserved); -#ifdef __cplusplus -}; -#endif - -BOOL WINAPI DllMainCRTStartup(HANDLE hDll,DWORD dwReason,LPVOID lpReserved) -{ - (void) lpReserved; - (void) dwReason; - (void) hDll; - return TRUE; -} -#endif - SHAREDSYMBOL int WINAPI _export GetMinFarVersion(void) { #define MAKEFARVERSION(major,minor) ( ((major)<<16) | (minor)) diff --git a/multiarc/src/MultiArc.hpp b/multiarc/src/MultiArc.hpp index cda5b9a7..54a7d63e 100644 --- a/multiarc/src/MultiArc.hpp +++ b/multiarc/src/MultiArc.hpp @@ -57,15 +57,6 @@ enum { CMD_DEFEXT }; - -// TODO: add to Archive API (?) -struct ArcItemUserData{ - DWORD SizeStruct; - int Codepage; - char *Prefix; - char *LinkName; -}; - typedef DWORD (WINAPI *PLUGINLOADFORMATMODULE)(const char *ModuleName); typedef BOOL (WINAPI *PLUGINISARCHIVE)(const char *Name,const unsigned char *Data,int DataSize); typedef BOOL (WINAPI *PLUGINOPENARCHIVE)(const char *Name,int *Type,bool Silent); diff --git a/multiarc/src/ma_emu.cpp b/multiarc/src/ma_emu.cpp deleted file mode 100644 index 91d17794..00000000 --- a/multiarc/src/ma_emu.cpp +++ /dev/null @@ -1,117 +0,0 @@ -/* - MA_EMU.CPP - - MultiArc plugin emulator for debugging second-level plugin modules - - Copyrigth (c) 2001 FAR group -*/ - -/* - Example: - bcc32 -v ma_emu.cpp rar.cpp - td32 ma_emu archive.rar -*/ - -#include <windows.h> -#include <limits.h> -#include <string.h> -#include <farplug-mb.h> -using namespace oldfar; - -#ifndef __STDIO_H -#include <stdio.h> -#endif -#ifndef __STDLIB_H -#include <stdlib.h> -#endif -#ifndef __STRING_H -#include <string.h> -#endif -#ifndef __STDARG_H -#include <stdarg.h> -#endif - - -#include "fmt.hpp" - -char Buff[128*1024]; - - -char* WINAPI FarMkTemp(char *Dest, const char *Prefix) -{ - if(Dest) - { - char TempName[NM]; - strcpy(TempName,"FTMPXXXXXX"); - if (mktemp(TempName)!=NULL) - { - strcpy(Dest, TempName); - return Dest; - } - } - return NULL; -} - - -int main(int argc,char *argv[]) -{ - FILE *fp; - - if(argc != 2) - return 1; - - if((fp=fopen(argv[1],"rb")) == NULL) - return 2; - - fread(Buff,sizeof(Buff),1,fp); - fclose(fp); - - - LoadFormatModule(argv[0]); - - struct PluginStartupInfo Info={0}; - Info.StructSize=sizeof(Info); - FARSTANDARDFUNCTIONS FSF={0}; - FSF.StructSize=sizeof(FARSTANDARDFUNCTIONS); - Info.FSF=&FSF; - FSF.MkTemp=FarMkTemp; - - SetFarInfo(&Info); - - if(IsArchive(argv[1],(const unsigned char *)Buff,sizeof(Buff))) - { - int TypeArc; - char FormatName[NM], DefaultExt[NM], Command[MA_MAX_SIZE_COMMAND_NAME]; - - if(OpenArchive(argv[1],&TypeArc,false) != FALSE) - { - struct ArcInfo arcInfo; - struct ArcItemInfo itemInfo={0}; - struct PluginPanelItem panelItem={0}; - - //DWORD SFXPos=GetSFXPos(); - GetFormatName(TypeArc,FormatName,DefaultExt); - GetDefaultCommands(TypeArc,0,Command); - - while(GetArcItem(&panelItem,&itemInfo) == GETARC_SUCCESS) - { - printf("%-16s 0x%04X %10ld %10ld %d\n", - panelItem.FindData.cFileName, - panelItem.FindData.dwFileAttributes, - panelItem.FindData.nFileSizeLow, - panelItem.PackSize, - itemInfo.DictSize); - - memset(&panelItem,0,sizeof(panelItem)); - memset(&itemInfo,0,sizeof(itemInfo)); - } - - memset(&arcInfo,0,sizeof(arcInfo)); - CloseArchive(&arcInfo); - - return 0; - } - return 4; - } - return 3; -} diff --git a/utils/include/utils.h b/utils/include/utils.h index 5e305730..7deb2d4c 100644 --- a/utils/include/utils.h +++ b/utils/include/utils.h @@ -289,9 +289,10 @@ const char *CaseIgnoreEngStrChr(const char c, const char *str, size_t len); template <class POD_T> - void ZeroFill(POD_T &pod) + void ZeroFill(POD_T &dst) { - memset(&pod, 0, sizeof(pod)); + static_assert ( std::is_pod<POD_T>::value, "ZeroFill should be used with POD types only"); + memset(&dst, 0, sizeof(dst)); } template <class STRING_T, typename ARRAY_T> |