Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package unrar for openSUSE:Factory:NonFree 
checked in at 2022-01-28 22:11:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory:NonFree/unrar (Old)
 and      /work/SRC/openSUSE:Factory:NonFree/.unrar.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "unrar"

Fri Jan 28 22:11:58 2022 rev:99 rq:949589 version:6.1.4

Changes:
--------
--- /work/SRC/openSUSE:Factory:NonFree/unrar/unrar.changes      2021-12-12 
00:55:14.246486660 +0100
+++ /work/SRC/openSUSE:Factory:NonFree/.unrar.new.1898/unrar.changes    
2022-01-28 22:11:59.119116073 +0100
@@ -1,0 +2,20 @@
+Fri Jan 28 07:17:34 UTC 2022 - Kyrill Detinov <lazy.k...@opensuse.org>
+
+- Update to 6.1.4.
+  * Based on final RAR 6.10.
+  * Switch -si can be used when extracting or testing to read archive
+    data from stdin.
+  * New -ep4<path> switch excludes the path prefix when extracting if
+    this path is found in the beginning of archived name.
+  * New -mes switch skips encrypted files when extracting or testing.
+    It replaces former -p- switch.
+  * New -op<path> switch sets the destination directory for 'x' and 'e'
+    extraction commands.
+  * If 'p' command is used to print a file to stdout, informational
+    messages are suppressed automatically to prevent them mixing
+    with file date.
+  * Warning is issued if entered password exceeds the allowed limit
+    of 127 characters and is truncated. Previously such passwords
+    had been truncated silently.
+
+-------------------------------------------------------------------

Old:
----
  unrarsrc-6.1.3.tar.gz

New:
----
  unrarsrc-6.1.4.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ unrar.spec ++++++
--- /var/tmp/diff_new_pack.YWUQ26/_old  2022-01-28 22:12:00.055109677 +0100
+++ /var/tmp/diff_new_pack.YWUQ26/_new  2022-01-28 22:12:00.059109649 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package unrar
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,9 +18,9 @@
 
 # majorversion should match the major version number.
 %define majorversion 6
-%define libsuffix 6_1_3
+%define libsuffix 6_1_4
 Name:           unrar
-Version:        6.1.3
+Version:        6.1.4
 Release:        0
 Summary:        A program to extract, test, and view RAR archives
 License:        NonFree

++++++ unrarsrc-6.1.3.tar.gz -> unrarsrc-6.1.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/consio.cpp new/unrar/consio.cpp
--- old/unrar/consio.cpp        2021-12-09 20:25:17.000000000 +0100
+++ new/unrar/consio.cpp        2022-01-24 08:33:17.000000000 +0100
@@ -267,6 +267,7 @@
     Array<char> StrA(n*4); // Up to 4 UTF-8 characters per wchar_t.
     File SrcFile;
     SrcFile.SetHandleType(FILE_HANDLESTD);
+    SrcFile.SetLineInputMode(true);
     int ReadSize=SrcFile.Read(&StrA[0],StrA.Size()-1);
     if (ReadSize<=0)
     {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/dll.rc new/unrar/dll.rc
--- old/unrar/dll.rc    2021-12-09 20:20:52.000000000 +0100
+++ new/unrar/dll.rc    2022-01-24 02:37:50.000000000 +0100
@@ -2,8 +2,8 @@
 #include <commctrl.h>
 
 VS_VERSION_INFO VERSIONINFO
-FILEVERSION 6, 10, 3, 343
-PRODUCTVERSION 6, 10, 3, 343
+FILEVERSION 6, 10, 100, 389
+PRODUCTVERSION 6, 10, 100, 389
 FILEOS VOS__WINDOWS32
 FILETYPE VFT_APP
 {
@@ -14,9 +14,9 @@
       VALUE "CompanyName", "Alexander Roshal\0"
       VALUE "ProductName", "RAR decompression library\0"
       VALUE "FileDescription", "RAR decompression library\0"
-      VALUE "FileVersion", "6.10.3\0"
-      VALUE "ProductVersion", "6.10.3\0"
-      VALUE "LegalCopyright", "Copyright ? Alexander Roshal 1993-2021\0"
+      VALUE "FileVersion", "6.10.0\0"
+      VALUE "ProductVersion", "6.10.0\0"
+      VALUE "LegalCopyright", "Copyright ? Alexander Roshal 1993-2022\0"
       VALUE "OriginalFilename", "Unrar.dll\0"
     }
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/file.cpp new/unrar/file.cpp
--- old/unrar/file.cpp  2021-12-09 20:25:18.000000000 +0100
+++ new/unrar/file.cpp  2022-01-24 08:33:17.000000000 +0100
@@ -7,6 +7,7 @@
   NewFile=false;
   LastWrite=false;
   HandleType=FILE_HANDLENORMAL;
+  LineInput=false;
   SkipClose=false;
   ErrorType=FILE_SUCCESS;
   OpenShared=false;
@@ -420,13 +421,17 @@
     }
     TotalRead+=ReadSize; // If ReadSize is -1, TotalRead is also set to -1 
here.
 
-    if (HandleType==FILE_HANDLESTD && ReadSize>0 && (uint)ReadSize<Size)
+    if (HandleType==FILE_HANDLESTD && !LineInput && ReadSize>0 && 
(uint)ReadSize<Size)
     {
       // Unlike regular files, for pipe we can read only as much as was
       // written at the other end of pipe. We had seen data coming in small
       // ~80 byte chunks when piping from 'type arc.rar'. Extraction code
       // would fail if we read an incomplete archive header from stdin.
       // So here we ensure that requested size is completely read.
+      // But we return the available data immediately in "line input" mode,
+      // when processing user's input in console prompts. Otherwise apps
+      // piping user responses to multiple Ask() prompts can hang if no more
+      // data is available yet and pipe isn't closed.
       Data=(byte*)Data+ReadSize;
       Size-=ReadSize;
       continue;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/file.hpp new/unrar/file.hpp
--- old/unrar/file.hpp  2021-12-09 20:25:18.000000000 +0100
+++ new/unrar/file.hpp  2022-01-24 08:33:17.000000000 +0100
@@ -59,6 +59,16 @@
     FileHandle hFile;
     bool LastWrite;
     FILE_HANDLETYPE HandleType;
+    
+    // If we read the user input in console prompts from stdin, we shall
+    // process the available line immediately, not waiting for rest of data.
+    // Otherwise apps piping user responses to multiple Ask() prompts can
+    // hang if no more data is available yet and pipe isn't closed.
+    // If we read RAR archive or other file data from stdin, we shall collect
+    // the entire requested block as long as pipe isn't closed, so we get
+    // complete archive headers, not split between different reads.
+    bool LineInput;
+
     bool SkipClose;
     FILE_READ_ERROR_MODE ReadErrorMode;
     bool NewFile;
@@ -112,6 +122,7 @@
     virtual bool IsOpened() {return hFile!=FILE_BAD_HANDLE;} // 'virtual' for 
MultiFile class.
     int64 FileLength();
     void SetHandleType(FILE_HANDLETYPE Type) {HandleType=Type;}
+    void SetLineInputMode(bool Mode) {LineInput=Mode;}
     FILE_HANDLETYPE GetHandleType() {return HandleType;}
     bool IsSeekable() {return HandleType!=FILE_HANDLESTD;}
     bool IsDevice();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/version.hpp new/unrar/version.hpp
--- old/unrar/version.hpp       2021-12-09 20:25:19.000000000 +0100
+++ new/unrar/version.hpp       2022-01-24 08:33:19.000000000 +0100
@@ -1,6 +1,6 @@
 #define RARVER_MAJOR     6
 #define RARVER_MINOR    10
-#define RARVER_BETA      3
-#define RARVER_DAY      10
-#define RARVER_MONTH    12
-#define RARVER_YEAR   2021
+#define RARVER_BETA      0
+#define RARVER_DAY      24
+#define RARVER_MONTH     1
+#define RARVER_YEAR   2022
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/volume.cpp new/unrar/volume.cpp
--- old/unrar/volume.cpp        2021-12-09 20:25:19.000000000 +0100
+++ new/unrar/volume.cpp        2022-01-24 08:33:19.000000000 +0100
@@ -46,15 +46,18 @@
 
   bool FailedOpen=false; // No more next volume open attempts if true.
 #if !defined(SILENT)
-  if (Cmd->VolumePause)
-  {
-    // If next volume can't be opened exclusively, it might be still
-    // downloading, so in -vp mode user may prefer to pause until completion
-    // even if volume is exist. FMF_OPENEXCLUSIVE works in Windows only.
-    File TestOpen;
-    if (!TestOpen.Open(NextName,FMF_OPENEXCLUSIVE) && 
!uiAskNextVolume(NextName,ASIZE(NextName)))
-      FailedOpen=true;
-  }
+  // In -vp mode we force the pause before next volume even if it is present
+  // and even if we are on the hard disk. It is important when user does not
+  // want to process partially downloaded volumes preliminary.
+  // 2022.01.11: In WinRAR 6.10 beta versions we tried to ignore VolumePause
+  // if we could open the next volume with FMF_OPENEXCLUSIVE. But another
+  // developer asked us to return the previous behavior and always prompt
+  // for confirmation. They want to control when unrar continues, because
+  // the next file might not be fully decoded yet. They write chunks of data
+  // and then close the file again until the next chunk comes in.
+
+  if (Cmd->VolumePause && !uiAskNextVolume(NextName,ASIZE(NextName)))
+    FailedOpen=true;
 #endif
 
   uint OpenMode = Cmd->OpenShared ? FMF_OPENSHARED : 0;

Reply via email to