Hello community,

here is the log from the commit of package unrar for openSUSE:Factory:NonFree 
checked in at 2014-11-06 18:07:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory:NonFree/unrar (Old)
 and      /work/SRC/openSUSE:Factory:NonFree/.unrar.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "unrar"

Changes:
--------
--- /work/SRC/openSUSE:Factory:NonFree/unrar/unrar.changes      2014-10-17 
11:30:59.000000000 +0200
+++ /work/SRC/openSUSE:Factory:NonFree/.unrar.new/unrar.changes 2014-11-06 
18:07:58.000000000 +0100
@@ -1,0 +2,7 @@
+Mon Nov  3 17:59:31 UTC 2014 - [email protected]
+
+- Update to 5.2.2.
+  * Based on rar 5.20 beta 3.
+  * No changelog available.
+
+-------------------------------------------------------------------

Old:
----
  unrarsrc-5.2.1.tar.gz

New:
----
  unrarsrc-5.2.2.tar.gz

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

Other differences:
------------------
++++++ unrar.spec ++++++
--- /var/tmp/diff_new_pack.z5zwcV/_old  2014-11-06 18:07:59.000000000 +0100
+++ /var/tmp/diff_new_pack.z5zwcV/_new  2014-11-06 18:07:59.000000000 +0100
@@ -18,10 +18,10 @@
 
 # majorversion should match the major version number.
 %define majorversion 5
-%define libsuffix 5_2_1
+%define libsuffix 5_2_2
 
 Name:           unrar
-Version:        5.2.1
+Version:        5.2.2
 Release:        0
 License:        SUSE-NonFree
 Summary:        A program to extract, test, and view RAR archives

++++++ unrarsrc-5.2.1.tar.gz -> unrarsrc-5.2.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/arcread.cpp new/unrar/arcread.cpp
--- old/unrar/arcread.cpp       2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/arcread.cpp       2014-11-03 09:39:29.000000000 +0100
@@ -811,7 +811,7 @@
         Raw.GetB((byte *)FileName,ReadNameSize);
         FileName[ReadNameSize]=0;
 
-        UtfToWide(FileName,hd->FileName,ASIZE(hd->FileName)-1);
+        UtfToWide(FileName,hd->FileName,ASIZE(hd->FileName));
 
         // Should do it before converting names, because extra fields can
         // affect name processing, like in case of NTFS streams.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/dll.rc new/unrar/dll.rc
--- old/unrar/dll.rc    2014-10-05 20:14:34.000000000 +0200
+++ new/unrar/dll.rc    2014-11-03 09:35:46.000000000 +0100
@@ -2,8 +2,8 @@
 #include <commctrl.h>
 
 VS_VERSION_INFO VERSIONINFO
-FILEVERSION 5, 20, 1, 1376
-PRODUCTVERSION 5, 20, 1, 1376
+FILEVERSION 5, 20, 3, 1404
+PRODUCTVERSION 5, 20, 3, 1404
 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.20.1\0"
-      VALUE "ProductVersion", "5.20.1\0"
+      VALUE "FileVersion", "5.20.3\0"
+      VALUE "ProductVersion", "5.20.3\0"
       VALUE "LegalCopyright", "Copyright � Alexander Roshal 1993-2014\0"
       VALUE "OriginalFilename", "Unrar.dll\0"
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/extract.cpp new/unrar/extract.cpp
--- old/unrar/extract.cpp       2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/extract.cpp       2014-11-03 09:39:29.000000000 +0100
@@ -50,6 +50,10 @@
       DataIO.ProcessedArcSize+=FD.Size;
   }
 
+  // Clean user entered password. Not really required, just for extra safety.
+  if (Cmd->ManualPassword)
+    Cmd->Password.Clean();
+
   if (TotalFileCount==0 && Cmd->Command[0]!='I' && 
       ErrHandler.GetErrorCode()!=RARX_BADPWD) // Not in case of wrong archive 
password.
   {
@@ -256,15 +260,11 @@
   int MatchNumber=Cmd->IsProcessFile(Arc.FileHead,&EqualNames,MatchType);
   bool ExactMatch=MatchNumber!=0;
 #ifndef SFX_MODULE
-  if (*Cmd->ArcPath==0 && Cmd->ExclPath==EXCL_BASEPATH)
+  if (*Cmd->ArcPath==0 && Cmd->ExclPath==EXCL_BASEPATH && ExactMatch)
   {
-    *Cmd->ArcPath=0;
-    if (ExactMatch)
-    {
-      Cmd->FileArgs.Rewind();
-      if 
(Cmd->FileArgs.GetString(Cmd->ArcPath,ASIZE(Cmd->ArcPath),MatchNumber-1))
-        *PointToName(Cmd->ArcPath)=0;
-    }
+    Cmd->FileArgs.Rewind();
+    if 
(Cmd->FileArgs.GetString(Cmd->ArcPath,ASIZE(Cmd->ArcPath),MatchNumber-1))
+      *PointToName(Cmd->ArcPath)=0;
   }
 #endif
   if (ExactMatch && !EqualNames)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/file.cpp new/unrar/file.cpp
--- old/unrar/file.cpp  2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/file.cpp  2014-11-03 09:39:29.000000000 +0100
@@ -2,7 +2,7 @@
 
 File::File()
 {
-  hFile=BAD_HANDLE;
+  hFile=FILE_BAD_HANDLE;
   *FileName=0;
   NewFile=false;
   LastWrite=false;
@@ -22,7 +22,7 @@
 
 File::~File()
 {
-  if (hFile!=BAD_HANDLE && !SkipClose)
+  if (hFile!=FILE_BAD_HANDLE && !SkipClose)
     if (NewFile)
       Delete();
     else
@@ -59,7 +59,7 @@
   hNewFile=CreateFile(Name,Access,ShareMode,NULL,OPEN_EXISTING,Flags,NULL);
 
   DWORD LastError;
-  if (hNewFile==BAD_HANDLE)
+  if (hNewFile==FILE_BAD_HANDLE)
   {
     LastError=GetLastError();
 
@@ -85,7 +85,7 @@
     }
   }
 
-  if (hNewFile==BAD_HANDLE && LastError==ERROR_FILE_NOT_FOUND)
+  if (hNewFile==FILE_BAD_HANDLE && LastError==ERROR_FILE_NOT_FOUND)
     ErrorType=FILE_NOTFOUND;
 #else
   int flags=UpdateMode ? O_RDWR:(WriteMode ? O_WRONLY:O_RDONLY);
@@ -112,7 +112,7 @@
   }
 #endif
   if (handle==-1)
-    hNewFile=BAD_HANDLE;
+    hNewFile=FILE_BAD_HANDLE;
   else
   {
 #ifdef FILE_USE_OPEN
@@ -121,13 +121,13 @@
     hNewFile=fdopen(handle,UpdateMode ? UPDATEBINARY:READBINARY);
 #endif
   }
-  if (hNewFile==BAD_HANDLE && errno==ENOENT)
+  if (hNewFile==FILE_BAD_HANDLE && errno==ENOENT)
     ErrorType=FILE_NOTFOUND;
 #endif
   NewFile=false;
   HandleType=FILE_HANDLENORMAL;
   SkipClose=false;
-  bool Success=hNewFile!=BAD_HANDLE;
+  bool Success=hNewFile!=FILE_BAD_HANDLE;
   if (Success)
   {
     hFile=hNewFile;
@@ -174,11 +174,11 @@
   bool Special=*LastChar=='.' || *LastChar==' ';
   
   if (Special)
-    hFile=BAD_HANDLE;
+    hFile=FILE_BAD_HANDLE;
   else
     hFile=CreateFile(Name,Access,ShareMode,NULL,CREATE_ALWAYS,0,NULL);
 
-  if (hFile==BAD_HANDLE)
+  if (hFile==FILE_BAD_HANDLE)
   {
     wchar LongName[NM];
     if (GetWinLongPath(Name,LongName,ASIZE(LongName)))
@@ -190,6 +190,10 @@
   WideToChar(Name,NameA,ASIZE(NameA));
 #ifdef FILE_USE_OPEN
   hFile=open(NameA,(O_CREAT|O_TRUNC) | (WriteMode ? O_WRONLY : O_RDWR));
+#ifdef _ANDROID
+  if (hFile==FILE_BAD_HANDLE)
+    hFile=JniCreateFile(Name); // If external card is read-only for usual file 
API.
+#endif
 #else
   hFile=fopen(NameA,WriteMode ? WRITEBINARY:CREATEBINARY);
 #endif
@@ -198,7 +202,7 @@
   HandleType=FILE_HANDLENORMAL;
   SkipClose=false;
   wcsncpyz(FileName,Name,ASIZE(FileName));
-  return hFile!=BAD_HANDLE;
+  return hFile!=FILE_BAD_HANDLE;
 }
 
 
@@ -224,7 +228,7 @@
 {
   bool Success=true;
 
-  if (hFile!=BAD_HANDLE)
+  if (hFile!=FILE_BAD_HANDLE)
   {
     if (!SkipClose)
     {
@@ -241,7 +245,7 @@
 #endif
 #endif
     }
-    hFile=BAD_HANDLE;
+    hFile=FILE_BAD_HANDLE;
   }
   HandleType=FILE_HANDLENORMAL;
   if (!Success && AllowExceptions)
@@ -254,7 +258,7 @@
 {
   if (HandleType!=FILE_HANDLENORMAL)
     return false;
-  if (hFile!=BAD_HANDLE)
+  if (hFile!=FILE_BAD_HANDLE)
     Close();
   if (!AllowDelete)
     return false;
@@ -287,7 +291,7 @@
     hFile=GetStdHandle(STD_OUTPUT_HANDLE);
 #else
     // Cannot use the standard stdout here, because it already has wide 
orientation.
-    if (hFile==BAD_HANDLE)
+    if (hFile==FILE_BAD_HANDLE)
     {
 #ifdef FILE_USE_OPEN
       hFile=dup(STDOUT_FILENO); // Open new stdout stream.
@@ -465,7 +469,7 @@
 
 bool File::RawSeek(int64 Offset,int Method)
 {
-  if (hFile==BAD_HANDLE)
+  if (hFile==FILE_BAD_HANDLE)
     return true;
   if (Offset<0 && Method!=SEEK_SET)
   {
@@ -496,7 +500,7 @@
 
 int64 File::Tell()
 {
-  if (hFile==BAD_HANDLE)
+  if (hFile==FILE_BAD_HANDLE)
     if (AllowExceptions)
       ErrHandler.SeekError(FileName);
     else
@@ -647,7 +651,7 @@
 
 bool File::IsDevice()
 {
-  if (hFile==BAD_HANDLE)
+  if (hFile==FILE_BAD_HANDLE)
     return false;
 #ifdef _WIN_ALL
   uint Type=GetFileType(hFile);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/file.hpp new/unrar/file.hpp
--- old/unrar/file.hpp  2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/file.hpp  2014-11-03 09:39:29.000000000 +0100
@@ -7,13 +7,13 @@
 
 #ifdef _WIN_ALL
   typedef HANDLE FileHandle;
-  #define BAD_HANDLE INVALID_HANDLE_VALUE
+  #define FILE_BAD_HANDLE INVALID_HANDLE_VALUE
 #elif defined(FILE_USE_OPEN)
   typedef off_t FileHandle;
-  #define BAD_HANDLE -1
+  #define FILE_BAD_HANDLE -1
 #else
   typedef FILE* FileHandle;
-  #define BAD_HANDLE NULL
+  #define FILE_BAD_HANDLE NULL
 #endif
 
 class RAROptions;
@@ -94,7 +94,7 @@
     void SetCloseFileTime(RarTime *ftm,RarTime *fta=NULL);
     static void SetCloseFileTimeByName(const wchar *Name,RarTime *ftm,RarTime 
*fta);
     void GetOpenFileTime(RarTime *ft);
-    bool IsOpened() {return hFile!=BAD_HANDLE;};
+    bool IsOpened() {return hFile!=FILE_BAD_HANDLE;};
     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/filefn.cpp new/unrar/filefn.cpp
--- old/unrar/filefn.cpp        2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/filefn.cpp        2014-11-03 09:39:29.000000000 +0100
@@ -29,6 +29,10 @@
   WideToChar(Name,NameA,ASIZE(NameA));
   mode_t uattr=SetAttr ? (mode_t)Attr:0777;
   int ErrCode=mkdir(NameA,uattr);
+#ifdef _ANDROID
+  if (ErrCode==-1 && errno!=ENOENT)
+    ErrCode=JniMkdir(Name) ? 0 : -1;  // If external card is read-only for 
usual file API.
+#endif
   if (ErrCode==-1)
     return errno==ENOENT ? MKDIR_BADPATH:MKDIR_ERROR;
   return MKDIR_SUCCESS;
@@ -58,8 +62,9 @@
       break;
 
     // Process all kinds of path separators, so user can enter Unix style
-    // path in Windows or Windows in Unix.
-    if (IsPathDiv(*s))
+    // path in Windows or Windows in Unix. s>Path check avoids attempting
+    // creating an empty directory for paths starting from path separator.
+    if (IsPathDiv(*s) && s>Path)
     {
 #ifdef _WIN_ALL
       // We must not attempt to create "D:" directory, because first
@@ -411,7 +416,12 @@
   char SrcNameA[NM],DestNameA[NM];
   WideToChar(SrcName,SrcNameA,ASIZE(SrcNameA));
   WideToChar(DestName,DestNameA,ASIZE(DestNameA));
-  return rename(SrcNameA,DestNameA)==0;
+  bool Success=rename(SrcNameA,DestNameA)==0;
+#ifdef _ANDROID
+  if (!Success)
+    Success=JniRename(SrcName,DestName); // If external card is read-only for 
usual file API.
+#endif
+  return Success;
 #endif
 }
 
@@ -430,7 +440,12 @@
 #else
   char NameA[NM];
   WideToChar(Name,NameA,ASIZE(NameA));
-  return remove(NameA)==0;
+  bool Success=remove(NameA)==0;
+#ifdef _ANDROID
+  if (!Success)
+    Success=JniDelete(Name);
+#endif
+  return Success;
 #endif
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/list.cpp new/unrar/list.cpp
--- old/unrar/list.cpp  2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/list.cpp  2014-11-03 09:39:29.000000000 +0100
@@ -165,6 +165,10 @@
     }
   }
 
+  // Clean user entered password. Not really required, just for extra safety.
+  if (Cmd->ManualPassword)
+    Cmd->Password.Clean();
+
   if (ArcCount>1 && !Bare && !Technical)
   {
     wchar UnpSizeText[20],PackSizeText[20];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/unrar/version.hpp new/unrar/version.hpp
--- old/unrar/version.hpp       2014-10-05 20:17:48.000000000 +0200
+++ new/unrar/version.hpp       2014-11-03 09:39:29.000000000 +0100
@@ -1,6 +1,6 @@
 #define RARVER_MAJOR     5
 #define RARVER_MINOR    20
-#define RARVER_BETA      1
-#define RARVER_DAY       6
-#define RARVER_MONTH    10
+#define RARVER_BETA      3
+#define RARVER_DAY       3
+#define RARVER_MONTH    11
 #define RARVER_YEAR   2014

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to