Hello community, here is the log from the commit of package unrar for openSUSE:Factory:NonFree checked in at 2019-03-01 16:50:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory:NonFree/unrar (Old) and /work/SRC/openSUSE:Factory:NonFree/.unrar.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "unrar" Fri Mar 1 16:50:33 2019 rev:77 rq:680094 version:5.7.3 Changes: -------- --- /work/SRC/openSUSE:Factory:NonFree/unrar/unrar.changes 2019-02-24 17:21:16.668387735 +0100 +++ /work/SRC/openSUSE:Factory:NonFree/.unrar.new.28833/unrar.changes 2019-03-01 16:50:33.449728188 +0100 @@ -1,0 +2,7 @@ +Thu Feb 28 11:24:41 UTC 2019 - Ismail Dönmez <idon...@suse.com> + +- Update to version 5.7.3 + * Based on WinRAR 5.70 + * No upstream changelog + +------------------------------------------------------------------- Old: ---- unrarsrc-5.7.2.tar.gz New: ---- unrarsrc-5.7.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ unrar.spec ++++++ --- /var/tmp/diff_new_pack.lcBhZs/_old 2019-03-01 16:50:34.169727917 +0100 +++ /var/tmp/diff_new_pack.lcBhZs/_new 2019-03-01 16:50:34.173727915 +0100 @@ -1,7 +1,7 @@ # # spec file for package unrar # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,16 +12,16 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # # majorversion should match the major version number. %define majorversion 5 -%define libsuffix 5_7_2 +%define libsuffix 5_7_3 Name: unrar -Version: 5.7.2 +Version: 5.7.3 Release: 0 Summary: A program to extract, test, and view RAR archives License: NonFree ++++++ unrarsrc-5.7.2.tar.gz -> unrarsrc-5.7.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/archive.hpp new/unrar/archive.hpp --- old/unrar/archive.hpp 2019-02-21 11:25:08.000000000 +0100 +++ new/unrar/archive.hpp 2019-02-24 20:07:17.000000000 +0100 @@ -84,7 +84,7 @@ void AddSubData(byte *SrcData,uint64 DataSize,File *SrcFile, const wchar *Name,uint Flags); bool ReadSubData(Array<byte> *UnpData,File *DestFile); - HEADER_TYPE GetHeaderType() {return CurHeaderType;}; + HEADER_TYPE GetHeaderType() {return CurHeaderType;} RAROptions* GetRAROptions() {return Cmd;} void SetSilentOpen(bool Mode) {SilentOpen=Mode;} #if 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/arcmem.cpp new/unrar/arcmem.cpp --- old/unrar/arcmem.cpp 2018-03-11 07:24:06.000000000 +0100 +++ new/unrar/arcmem.cpp 1970-01-01 01:00:00.000000000 +0100 @@ -1,67 +0,0 @@ -ArcMemory::ArcMemory() -{ - Loaded=false; - SeekPos=0; -} - - -void ArcMemory::Load(const byte *Data,size_t Size) -{ - ArcData.Alloc(Size); - memcpy(&ArcData[0],Data,Size); - Loaded=true; - SeekPos=0; -} - - -bool ArcMemory::Unload() -{ - if (!Loaded) - return false; - Loaded=false; - return true; -} - - -bool ArcMemory::Read(void *Data,size_t Size,size_t &Result) -{ - if (!Loaded) - return false; - Result=(size_t)Min(Size,ArcData.Size()-SeekPos); - memcpy(Data,&ArcData[(size_t)SeekPos],Result); - SeekPos+=Result; - return true; -} - - -bool ArcMemory::Seek(int64 Offset,int Method) -{ - if (!Loaded) - return false; - if (Method==SEEK_SET) - { - if (Offset<0) - SeekPos=0; - else - SeekPos=Min((uint64)Offset,ArcData.Size()); - } - else - if (Method==SEEK_CUR || Method==SEEK_END) - { - if (Method==SEEK_END) - SeekPos=ArcData.Size(); - SeekPos+=(uint64)Offset; - if (SeekPos>ArcData.Size()) - SeekPos=Offset<0 ? 0 : ArcData.Size(); - } - return true; -} - - -bool ArcMemory::Tell(int64 *Pos) -{ - if (!Loaded) - return false; - *Pos=SeekPos; - return true; -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/arcmem.hpp new/unrar/arcmem.hpp --- old/unrar/arcmem.hpp 2018-03-11 07:24:06.000000000 +0100 +++ new/unrar/arcmem.hpp 1970-01-01 01:00:00.000000000 +0100 @@ -1,22 +0,0 @@ -#ifndef _RAR_ARCMEM_ -#define _RAR_ARCMEM_ - -// Memory interface for software fuzzers. - -class ArcMemory -{ - private: - bool Loaded; - Array<byte> ArcData; - uint64 SeekPos; - public: - ArcMemory(); - void Load(const byte *Data,size_t Size); - bool Unload(); - bool IsLoaded() {return Loaded;} - bool Read(void *Data,size_t Size,size_t &Result); - bool Seek(int64 Offset,int Method); - bool Tell(int64 *Pos); -}; - -#endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/arcread.cpp new/unrar/arcread.cpp --- old/unrar/arcread.cpp 2019-02-21 11:25:08.000000000 +0100 +++ new/unrar/arcread.cpp 2019-02-24 20:07:17.000000000 +0100 @@ -204,7 +204,7 @@ if (ShortBlock.HeaderType==HEAD_MAIN && (ShortBlock.Flags & MHD_COMMENT)!=0) { // Old style (up to RAR 2.9) main archive comment embedded into - // the main archive header found. While we can read the entire + // the main archive header found. While we can read the entire // ShortBlock.HeadSize here and remove this part of "if", it would be // waste of memory, because we'll read and process this comment data // in other function anyway and we do not need them here now. @@ -230,7 +230,7 @@ Encrypted=(MainHead.Flags & MHD_PASSWORD)!=0; Signed=MainHead.PosAV!=0 || MainHead.HighPosAV!=0; MainHead.CommentInHeader=(MainHead.Flags & MHD_COMMENT)!=0; - + // Only for encrypted 3.0+ archives. 2.x archives did not have this // flag, so for non-encrypted archives, we'll set it later based on // file attributes. @@ -257,7 +257,7 @@ hd->WinSize=hd->Dir ? 0:0x10000<<((hd->Flags & LHD_WINDOWMASK)>>5); hd->CommentInHeader=(hd->Flags & LHD_COMMENT)!=0; hd->Version=(hd->Flags & LHD_VERSION)!=0; - + hd->DataSize=Raw.Get4(); uint LowUnpSize=Raw.Get4(); hd->HostOS=Raw.Get1(); @@ -282,7 +282,7 @@ { case 13: hd->CryptMethod=CRYPT_RAR13; break; case 15: hd->CryptMethod=CRYPT_RAR15; break; - case 20: + case 20: case 26: hd->CryptMethod=CRYPT_RAR20; break; default: hd->CryptMethod=CRYPT_RAR30; break; } @@ -304,7 +304,7 @@ } hd->Inherited=!FileBlock && (hd->SubFlags & SUBHEAD_FLAGS_INHERITED)!=0; - + hd->LargeFile=(hd->Flags & LHD_LARGE)!=0; uint HighPackSize,HighUnpSize; @@ -314,7 +314,7 @@ HighUnpSize=Raw.Get4(); hd->UnknownUnpSize=(LowUnpSize==0xffffffff && HighUnpSize==0xffffffff); } - else + else { HighPackSize=HighUnpSize=0; // UnpSize equal to 0xffffffff without LHD_LARGE flag indicates @@ -509,7 +509,7 @@ NextBlockPos+=Raw.Get4(); break; } - + ushort HeaderCRC=Raw.GetCRC15(false); // Old AV header does not have header CRC properly set. @@ -644,7 +644,7 @@ BrokenHeaderMsg(); return 0; } - + Raw.Read(SizeToRead); if (Raw.Size()<HeaderSize) @@ -677,7 +677,7 @@ return 0; } } - + uint64 ExtraSize=0; if ((ShortBlock.Flags & HFL_EXTRA)!=0) { @@ -770,7 +770,7 @@ // to not break normal archive processing by calling function. int64 SaveCurBlockPos=CurBlockPos,SaveNextBlockPos=NextBlockPos; HEADER_TYPE SaveCurHeaderType=CurHeaderType; - + QOpen.Init(this,false); QOpen.Load(MainHead.QOpenOffset); @@ -795,7 +795,7 @@ hd->PackSize=DataSize; hd->FileFlags=(uint)Raw.GetV(); hd->UnpSize=Raw.GetV(); - + hd->UnknownUnpSize=(hd->FileFlags & FHFL_UNPUNKNOWN)!=0; if (hd->UnknownUnpSize) hd->UnpSize=INT64NDF; @@ -882,7 +882,7 @@ RecoverySize=Header.RecSectionSize*Header.RecCount; } #endif - + if (BadCRC) // Add the file name to broken header message displayed above. uiMsg(UIERROR_FHEADERBROKEN,Archive::FileName,hd->FileName); } @@ -1307,7 +1307,7 @@ if (mask == (mode_t) -1) { - // umask call returns the current umask value. Argument (022) is not + // umask call returns the current umask value. Argument (022) is not // really important here. mask = umask(022); @@ -1384,8 +1384,8 @@ // ':' in file names is allowed in Unix, but not in Windows. // Even worse, file data will be written to NTFS stream on NTFS, - // so automatic name correction on file create error in extraction - // routine does not work. In Windows and DOS versions we better + // so automatic name correction on file create error in extraction + // routine does not work. In Windows and DOS versions we better // replace ':' now. if (*s==':') *s='_'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/dll.rc new/unrar/dll.rc --- old/unrar/dll.rc 2019-02-21 11:15:31.000000000 +0100 +++ new/unrar/dll.rc 2019-02-24 20:02:22.000000000 +0100 @@ -2,8 +2,8 @@ #include <commctrl.h> VS_VERSION_INFO VERSIONINFO -FILEVERSION 5, 70, 2, 2979 -PRODUCTVERSION 5, 70, 2, 2979 +FILEVERSION 5, 70, 100, 2983 +PRODUCTVERSION 5, 70, 100, 2983 FILEOS VOS__WINDOWS32 FILETYPE VFT_APP { @@ -14,8 +14,8 @@ VALUE "CompanyName", "Alexander Roshal\0" VALUE "ProductName", "RAR decompression library\0" VALUE "FileDescription", "RAR decompression library\0" - VALUE "FileVersion", "5.70.2\0" - VALUE "ProductVersion", "5.70.2\0" + VALUE "FileVersion", "5.70.0\0" + VALUE "ProductVersion", "5.70.0\0" VALUE "LegalCopyright", "Copyright � Alexander Roshal 1993-2019\0" VALUE "OriginalFilename", "Unrar.dll\0" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/errhnd.hpp new/unrar/errhnd.hpp --- old/unrar/errhnd.hpp 2019-02-21 11:25:09.000000000 +0100 +++ new/unrar/errhnd.hpp 2019-02-24 20:07:19.000000000 +0100 @@ -56,7 +56,7 @@ uint GetErrorCount() {return ErrCount;} void SetSignalHandlers(bool Enable); void Throw(RAR_EXIT Code); - void SetSilent(bool Mode) {Silent=Mode;}; + void SetSilent(bool Mode) {Silent=Mode;} bool GetSysErrMsg(wchar *Msg,size_t Size); void SysErrMsg(); int GetSystemErrorCode(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/extract.cpp new/unrar/extract.cpp --- old/unrar/extract.cpp 2019-02-21 11:25:09.000000000 +0100 +++ new/unrar/extract.cpp 2019-02-24 20:07:19.000000000 +0100 @@ -1085,7 +1085,7 @@ { #if defined(_WIN_ALL) && !defined(SFX_MODULE) if (Cmd->SetCompressedAttr && - (Arc.FileHead.FileAttr & FILE_ATTRIBUTE_COMPRESSED)!=0 && WinNT()) + (Arc.FileHead.FileAttr & FILE_ATTRIBUTE_COMPRESSED)!=0 && WinNT()!=WNT_NONE) SetFileCompression(DestFileName,true); #endif SetFileHeaderExtra(Cmd,Arc,DestFileName); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/file.hpp new/unrar/file.hpp --- old/unrar/file.hpp 2019-02-21 11:25:10.000000000 +0100 +++ new/unrar/file.hpp 2019-02-24 20:07:19.000000000 +0100 @@ -99,7 +99,7 @@ void SetCloseFileTime(RarTime *ftm,RarTime *fta=NULL); static void SetCloseFileTimeByName(const wchar *Name,RarTime *ftm,RarTime *fta); void GetOpenFileTime(RarTime *ft); - virtual bool IsOpened() {return hFile!=FILE_BAD_HANDLE;}; // 'virtual' for MultiFile class. + virtual bool IsOpened() {return hFile!=FILE_BAD_HANDLE;} // 'virtual' for MultiFile class. int64 FileLength(); void SetHandleType(FILE_HANDLETYPE Type) {HandleType=Type;} FILE_HANDLETYPE GetHandleType() {return HandleType;} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/rs16.cpp new/unrar/rs16.cpp --- old/unrar/rs16.cpp 2019-02-21 11:25:12.000000000 +0100 +++ new/unrar/rs16.cpp 2019-02-24 20:07:22.000000000 +0100 @@ -27,7 +27,7 @@ delete[] MX; delete[] ValidFlags; } - + // Initialize logarithms and exponents Galois field tables. void RSCoder16::gfInit() @@ -41,7 +41,7 @@ gfExp[L]=E; gfExp[L+gfSize]=E; // Duplicate the table to avoid gfExp overflow check. E<<=1; - if (E>gfSize) + if (E>gfSize) E^=0x1100B; // Irreducible field-generator polynomial. } @@ -59,7 +59,7 @@ } -uint RSCoder16::gfMul(uint a,uint b) // Multiplication in Galois field. +uint RSCoder16::gfMul(uint a,uint b) // Multiplication in Galois field. { return gfExp[gfLog[a]+gfLog[b]]; } @@ -156,7 +156,7 @@ for (uint Kr = 0, Kf = 0; Kr < NE; Kr++, Kf++) { while (ValidFlags[Kf]) // Skip trivial rows. - Kf++; + Kf++; MI[Kr * ND + Kf] = 1; // Set diagonal 1. } @@ -174,7 +174,7 @@ // after MI[..]^=, but we do not need it for matrix inversion. for (uint I = 0; I < NE; I++) MI[I * ND + Kf] ^= MX[I * ND + Kf]; - Kf++; + Kf++; } if (Kf == ND) @@ -186,14 +186,14 @@ uint PInv = gfInv( MXk[Kf] ); // Pivot inverse. // Divide the pivot row by pivot, so pivot cell contains 1. for (uint I = 0; I < ND; I++) - { + { MXk[I] = gfMul( MXk[I], PInv ); MIk[I] = gfMul( MIk[I], PInv ); } for (uint I = 0; I < NE; I++) if (I != Kr) // For all rows except containing the pivot cell. - { + { // Apply Gaussian elimination Mij -= Mkj * Mik / pivot. // Since pivot is already 1, it is reduced to Mij -= Mkj * Mik. uint *MXi = MX + I * ND; // i-th row of main matrix. @@ -361,7 +361,7 @@ __m128i LowBytes1=_mm_and_si128(D[1],LowByteMask); __m128i HighBytes=_mm_packus_epi16(HighBytes0,HighBytes1); __m128i LowBytes=_mm_packus_epi16(LowBytes0,LowBytes1); - + // Multiply bits 0..3 of low bytes. Store low and high product bytes // separately in cumulative sum variables. __m128i LowBytesLow4=_mm_and_si128(LowBytes,Low4Mask); @@ -377,7 +377,7 @@ // Add new product to existing sum, low and high bytes separately. LowBytesMultSum=_mm_xor_si128(LowBytesMultSum,LowBytesHigh4MultLow); HighBytesMultSum=_mm_xor_si128(HighBytesMultSum,LowBytesHigh4MultHigh); - + // Multiply bits 0..3 of high bytes. Store low and high product bytes separately. __m128i HighBytesLow4=_mm_and_si128(HighBytes,Low4Mask); __m128i HighBytesLow4MultLow=_mm_shuffle_epi8(T2L,HighBytesLow4); @@ -413,7 +413,7 @@ // because Data and ECC can have different alignment offsets. for (; Pos<BlockSize; Pos+=2) *(ushort*)(ECC+Pos) ^= gfMul( M, *(ushort*)(Data+Pos) ); - + return true; } #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/scantree.hpp new/unrar/scantree.hpp --- old/unrar/scantree.hpp 2019-02-21 11:25:12.000000000 +0100 +++ new/unrar/scantree.hpp 2019-02-24 20:07:22.000000000 +0100 @@ -64,7 +64,7 @@ ScanTree(StringList *FileMasks,RECURSE_MODE Recurse,bool GetLinks,SCAN_DIRS GetDirs); ~ScanTree(); SCAN_CODE GetNext(FindData *FindData); - size_t GetSpecPathLength() {return SpecPathLength;}; + size_t GetSpecPathLength() {return SpecPathLength;} int GetErrors() {return Errors;}; void SetErrArcName(const wchar *Name) {wcsncpyz(ErrArcName,Name,ASIZE(ErrArcName));} void SetCommandData(CommandData *Cmd) {ScanTree::Cmd=Cmd;} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/suballoc.hpp new/unrar/suballoc.hpp --- old/unrar/suballoc.hpp 2019-02-21 11:25:13.000000000 +0100 +++ new/unrar/suballoc.hpp 2019-02-24 20:07:23.000000000 +0100 @@ -77,7 +77,7 @@ inline void* ExpandUnits(void* ptr,int OldNU); inline void* ShrinkUnits(void* ptr,int OldNU,int NewNU); inline void FreeUnits(void* ptr,int OldNU); - long GetAllocatedMemory() {return(SubAllocatorSize);}; + long GetAllocatedMemory() {return(SubAllocatorSize);} byte *pText, *UnitsStart,*HeapEnd,*FakeUnitsStart; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/unicode.cpp new/unrar/unicode.cpp --- old/unrar/unicode.cpp 2019-02-21 11:25:13.000000000 +0100 +++ new/unrar/unicode.cpp 2019-02-24 20:07:24.000000000 +0100 @@ -70,7 +70,7 @@ #endif if (DestSize>0) Dest[DestSize-1]=0; - + // We tried to return the empty string if conversion is failed, // but it does not work well. WideCharToMultiByte returns 'failed' code // and partially converted string even if we wanted to convert only a part @@ -178,7 +178,7 @@ #if defined(_UNIX) && defined(MBFUNCTIONS) -// Convert and map inconvertible Unicode characters. +// Convert and map inconvertible Unicode characters. // We use it for extended ASCII names in Unix. void CharToWideMap(const char *Src,wchar *Dest,size_t DestSize,bool &Success) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/unpack50.cpp new/unrar/unpack50.cpp --- old/unrar/unpack50.cpp 2019-02-21 11:25:13.000000000 +0100 +++ new/unrar/unpack50.cpp 2019-02-24 20:07:24.000000000 +0100 @@ -11,7 +11,7 @@ // Check TablesRead5 to be sure that we read tables at least once // regardless of current block header TablePresent flag. // So we can safefly use these tables below. - if (!ReadBlockHeader(Inp,BlockHeader) || + if (!ReadBlockHeader(Inp,BlockHeader) || !ReadTables(Inp,BlockHeader,BlockTables) || !TablesRead5) return; } @@ -536,11 +536,11 @@ if (!UnpReadBuf()) return false; Inp.faddbits((8-Inp.InBit)&7); - + byte BlockFlags=Inp.fgetbits()>>8; Inp.faddbits(8); uint ByteCount=((BlockFlags>>3)&3)+1; // Block size byte count. - + if (ByteCount==4) return false; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/unpack50frag.cpp new/unrar/unpack50frag.cpp --- old/unrar/unpack50frag.cpp 2019-02-21 11:25:13.000000000 +0100 +++ new/unrar/unpack50frag.cpp 2019-02-24 20:07:24.000000000 +0100 @@ -48,7 +48,7 @@ } if (NewMem==NULL) throw std::bad_alloc(); - + // Clean the window to generate the same output when unpacking corrupt // RAR files, which may access to unused areas of sliding dictionary. memset(NewMem,0,Size); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/unpack50mt.cpp new/unrar/unpack50mt.cpp --- old/unrar/unpack50mt.cpp 2019-02-21 11:25:13.000000000 +0100 +++ new/unrar/unpack50mt.cpp 2019-02-24 20:07:24.000000000 +0100 @@ -165,7 +165,7 @@ if (DataLeft<TooSmallToProcess) break; } - + //#undef USE_THREADS UnpackThreadDataList UTDArray[MaxPoolThreads]; uint UTDArrayPos=0; @@ -180,7 +180,7 @@ UnpackThreadDataList *UTD=UTDArray+UTDArrayPos++; UTD->D=UnpThreadData+CurBlock; UTD->BlockCount=Min(MaxBlockPerThread,BlockNumberMT-CurBlock); - + #ifdef USE_THREADS if (BlockNumber==1) UnpackDecode(*UTD->D); @@ -200,7 +200,7 @@ #endif bool IncompleteThread=false; - + for (uint Block=0;Block<BlockNumber;Block++) { UnpackThreadData *CurData=UnpThreadData+Block; @@ -251,7 +251,7 @@ break; } } - + if (IncompleteThread || Done) break; // Current buffer is done, read more data or quit. else @@ -303,7 +303,7 @@ D.DamagedData=true; return; } - + D.DecodedSize=0; int BlockBorder=D.BlockHeader.BlockStart+D.BlockHeader.BlockSize-1; @@ -413,7 +413,7 @@ { UnpackFilter Filter; ReadFilter(D.Inp,Filter); - + CurItem->Type=UNPDT_FILTER; CurItem->Length=Filter.Type; CurItem->Distance=Filter.BlockStart; @@ -498,7 +498,7 @@ if (Item->Type==UNPDT_FILTER) { UnpackFilter Filter; - + Filter.Type=(byte)Item->Length; Filter.BlockStart=Item->Distance; @@ -534,7 +534,7 @@ D.DamagedData=true; return false; } - + int BlockBorder=D.BlockHeader.BlockStart+D.BlockHeader.BlockSize-1; // Reserve enough space even for filter entry. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unrar/version.hpp new/unrar/version.hpp --- old/unrar/version.hpp 2019-02-21 11:25:14.000000000 +0100 +++ new/unrar/version.hpp 2019-02-24 20:07:24.000000000 +0100 @@ -1,6 +1,6 @@ #define RARVER_MAJOR 5 #define RARVER_MINOR 70 -#define RARVER_BETA 2 -#define RARVER_DAY 21 +#define RARVER_BETA 0 +#define RARVER_DAY 25 #define RARVER_MONTH 2 #define RARVER_YEAR 2019