refactoring:
- added CEXEBuild::update_exehead() and made everyone use it - renamed some variables (of the *exeheader* variety) bug fix: - uninstaller CRC-check failed if !packhdr created a non-512-bytes-aligned exehead git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3695 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
60aa307741
commit
ba8a64a806
12 changed files with 132 additions and 131 deletions
|
@ -2451,64 +2451,34 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
switch (k) {
|
||||
case 0: // JF> should handle the state of going from bzip2 back to zlib:
|
||||
compressor = &zlib_compressor;
|
||||
free(header_data_new);
|
||||
header_data_new=(unsigned char*)malloc(zlib_exeheader_size);
|
||||
exeheader_size_new=zlib_exeheader_size;
|
||||
exeheader_size=zlib_exeheader_size;
|
||||
|
||||
if (!header_data_new)
|
||||
{
|
||||
ERROR_MSG("Internal compiler error #12345: malloc(%d) failed\n",exeheader_size_new);
|
||||
extern void quit(); quit();
|
||||
}
|
||||
|
||||
memcpy(header_data_new,zlib_header_data,zlib_exeheader_size);
|
||||
update_exehead(zlib_exehead, zlib_exehead_size);
|
||||
#ifdef NSIS_ZLIB_COMPRESS_WHOLE
|
||||
build_compress_whole=true;
|
||||
#else
|
||||
build_compress_whole=false;
|
||||
#endif
|
||||
break;
|
||||
|
||||
case 1:
|
||||
compressor=&bzip2_compressor;
|
||||
free(header_data_new);
|
||||
header_data_new=(unsigned char*)malloc(bzip2_exeheader_size);
|
||||
exeheader_size_new=bzip2_exeheader_size;
|
||||
exeheader_size=bzip2_exeheader_size;
|
||||
|
||||
if (!header_data_new)
|
||||
{
|
||||
ERROR_MSG("Internal compiler error #12345: malloc(%d) failed\n",exeheader_size_new);
|
||||
extern void quit(); quit();
|
||||
}
|
||||
|
||||
memcpy(header_data_new,bzip2_header_data,bzip2_exeheader_size);
|
||||
update_exehead(bzip2_exehead, bzip2_exehead_size);
|
||||
#ifdef NSIS_BZIP2_COMPRESS_WHOLE
|
||||
build_compress_whole=true;
|
||||
#else
|
||||
build_compress_whole=false;
|
||||
#endif
|
||||
break;
|
||||
|
||||
case 2:
|
||||
compressor = &lzma_compressor;
|
||||
free(header_data_new);
|
||||
header_data_new=(unsigned char*)malloc(lzma_exeheader_size);
|
||||
exeheader_size_new=lzma_exeheader_size;
|
||||
exeheader_size=lzma_exeheader_size;
|
||||
|
||||
if (!header_data_new)
|
||||
{
|
||||
ERROR_MSG("Internal compiler error #12345: malloc(%d) failed\n",exeheader_size_new);
|
||||
extern void quit(); quit();
|
||||
}
|
||||
|
||||
memcpy(header_data_new, lzma_header_data, lzma_exeheader_size);
|
||||
update_exehead(lzma_exehead, lzma_exehead_size);
|
||||
#ifdef NSIS_LZMA_COMPRESS_WHOLE
|
||||
build_compress_whole=true;
|
||||
#else
|
||||
build_compress_whole=false;
|
||||
#endif
|
||||
break;
|
||||
|
||||
default:
|
||||
PRINTHELP();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue