[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    ark patch
From:       Michael Jarrett <gexcfxyy () umail ! corel ! com>
Date:       2001-01-16 18:48:16
[Download RAW message or body]

Would somebody please tell me if this patch for kdeutils/ark is okay? I
think the maintainer isn't actively maintaining the project, and I
wouldn't want to get too many people angry by checking in something that
will break their work.

The changes are minor, and ark builds and works as it is supposed to
(with bugs fixed) with KDE and QT out of today's CVS

Yes, there are more patches coming after this, ark fans!

Fixes critical bug #17194 ark not including Folder as expected
Fixed grave bug #18554 Unable to view a file which has a slash in the
filename

Michael Jarrett
michaelj@corel.com


["ark_dir_junk.patch" (text/plain)]

Index: ar.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/ar.cc,v
retrieving revision 1.20
diff -u -r1.20 ar.cc
--- ar.cc	2000/08/01 16:06:38	1.20
+++ ar.cc	2001/01/16 18:39:16
@@ -262,7 +262,8 @@
   kdDebug(1601) << "+ArArch::addFile" << endl;
 }
 
-void ArArch::unarchFile(QStringList *_fileList, const QString & _destDir)
+void ArArch::unarchFile(QStringList *_fileList, const QString & _destDir,
+			bool viewFriendly)
 {
   // if _fileList is empty, we extract all.
   // if _destDir is empty, look at settings for extract directory
Index: ar.h
===================================================================
RCS file: /home/kde/kdeutils/ark/ar.h,v
retrieving revision 1.16
diff -u -r1.16 ar.h
--- ar.h	2000/06/13 20:34:44	1.16
+++ ar.h	2001/01/16 18:39:16
@@ -51,7 +51,8 @@
   virtual void addDir(const QString &) {} // never gets called
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 
 protected slots:
   void slotReceivedTOC(KProcess *, char *, int);
Index: arch.h
===================================================================
RCS file: /home/kde/kdeutils/ark/arch.h,v
retrieving revision 1.35
diff -u -r1.35 arch.h
--- arch.h	2000/07/10 20:03:46	1.35
+++ arch.h	2001/01/16 18:39:16
@@ -91,7 +91,9 @@
 
   // unarch the files in the list or all files if the list is empty.
   // if _destDir is empty, look at settings for extract directory
-  virtual void unarchFile(QStringList *, const QString & _destDir="") = 0;
+  // viewFriendly forces certain options like directory junking required by view/edit
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false) = 0;
 
   QString fileName() const { return m_filename; };
 
Index: arksettings.cpp
===================================================================
RCS file: /home/kde/kdeutils/ark/arksettings.cpp,v
retrieving revision 1.25
diff -u -r1.25 arksettings.cpp
--- arksettings.cpp	2000/09/05 09:20:07	1.25
+++ arksettings.cpp	2001/01/16 18:39:17
@@ -251,7 +251,7 @@
   kc->setGroup( ZIP_GROUP );
 
   m_zipExtractOverwrite = kc->readBoolEntry( EXTRACT_OVERWRITE, true );
-  m_zipExtractJunkPaths = kc->readBoolEntry( EXTRACT_JUNKPATHS, true );
+  m_zipExtractJunkPaths = kc->readBoolEntry( EXTRACT_JUNKPATHS, false );
   m_zipExtractLowerCase = kc->readBoolEntry( EXTRACT_LOWERCASE, false );
 
   m_zipAddRecurseDirs = kc->readBoolEntry( ADD_RECURSEDIRS, true );
Index: arkwidget.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/arkwidget.cc,v
retrieving revision 1.120
diff -u -r1.120 arkwidget.cc
--- arkwidget.cc	2001/01/12 15:52:47	1.120
+++ arkwidget.cc	2001/01/16 18:39:17
@@ -1870,7 +1870,7 @@
 			      _pItem->text(getSizeColumn()).toLong()))
     {
       disableAll();
-      arch->unarchFile(m_extractList, m_settings->getTmpDir() );
+      arch->unarchFile(m_extractList, m_settings->getTmpDir(), true);
     }
 }
 
Index: compressedfile.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/compressedfile.cc,v
retrieving revision 1.12
diff -u -r1.12 compressedfile.cc
--- compressedfile.cc	2001/01/12 14:35:21	1.12
+++ compressedfile.cc	2001/01/16 18:39:17
@@ -294,7 +294,8 @@
   slotAddExited(_kp);
 }
 
-void CompressedFile::unarchFile(QStringList *, const QString & _destDir)
+void CompressedFile::unarchFile(QStringList *, const QString & _destDir,
+				bool viewFriendly)
 {
   if (_destDir != m_tmpdir)
     {
Index: compressedfile.h
===================================================================
RCS file: /home/kde/kdeutils/ark/compressedfile.h,v
retrieving revision 1.2
diff -u -r1.2 compressedfile.h
--- compressedfile.h	2000/05/16 18:52:14	1.2
+++ compressedfile.h	2001/01/16 18:39:17
@@ -57,7 +57,8 @@
   virtual void addDir(const QString &) { }
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 
   QString getUnCompressor();
   QString getCompressor();
Index: lha.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/lha.cc,v
retrieving revision 1.20
diff -u -r1.20 lha.cc
--- lha.cc	2000/10/17 19:51:34	1.20
+++ lha.cc	2001/01/16 18:39:17
@@ -337,7 +337,8 @@
   kdDebug(1601) << "+LhaArch::addFile" << endl;
 }
 
-void LhaArch::unarchFile(QStringList *_fileList, const QString & _destDir)
+void LhaArch::unarchFile(QStringList *_fileList, const QString & _destDir,
+			 bool viewFriendly)
 {
   // if _fileList is empty, we extract all.
   // if _destDir is empty, look at settings for extract directory
Index: lha.h
===================================================================
RCS file: /home/kde/kdeutils/ark/lha.h,v
retrieving revision 1.14
diff -u -r1.14 lha.h
--- lha.h	2000/06/13 20:34:44	1.14
+++ lha.h	2001/01/16 18:39:17
@@ -50,7 +50,8 @@
   virtual void addDir(const QString & _dirName);
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 
 protected:
   bool m_header_removed, m_finished, m_error;
Index: rar.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/rar.cc,v
retrieving revision 1.14
diff -u -r1.14 rar.cc
--- rar.cc	2001/01/09 14:24:30	1.14
+++ rar.cc	2001/01/16 18:39:17
@@ -331,7 +331,8 @@
   kdDebug(1601) << "+RarArch::addFile" << endl;
 }
 
-void RarArch::unarchFile(QStringList *_fileList, const QString & _destDir)
+void RarArch::unarchFile(QStringList *_fileList, const QString & _destDir,
+			 bool viewFriendly)
 {
   // if _fileList is empty, we extract all.
   // if _destDir is empty, look at settings for extract directory
Index: rar.h
===================================================================
RCS file: /home/kde/kdeutils/ark/rar.h,v
retrieving revision 1.6
diff -u -r1.6 rar.h
--- rar.h	2000/06/13 20:34:44	1.6
+++ rar.h	2001/01/16 18:39:17
@@ -47,7 +47,8 @@
   virtual void addDir(const QString & _dirName);
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 
 protected:
   bool m_header_removed, m_finished, m_error, m_split_line;
Index: tar.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/tar.cc,v
retrieving revision 1.41
diff -u -r1.41 tar.cc
--- tar.cc	2001/01/09 14:24:30	1.41
+++ tar.cc	2001/01/16 18:39:17
@@ -600,7 +600,8 @@
   kdDebug(1601) << "-TarArch::slotAddFinished" << endl;
 }
 
-void TarArch::unarchFile( QStringList * _fileList, const QString & _destDir)
+void TarArch::unarchFile(QStringList * _fileList, const QString & _destDir,
+			 bool viewFriendly)
 {
   kdDebug(1601) << "+TarArch::unarchFile" << endl;
   QString dest;
Index: tar.h
===================================================================
RCS file: /home/kde/kdeutils/ark/tar.h,v
retrieving revision 1.25
diff -u -r1.25 tar.h
--- tar.h	2000/06/13 20:34:44	1.25
+++ tar.h	2001/01/16 18:39:17
@@ -70,7 +70,8 @@
   virtual void addFile( QStringList *);
   virtual void addDir(const QString &);
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 	
   virtual int getEditFlag();
 
Index: zip.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/zip.cc,v
retrieving revision 1.45
diff -u -r1.45 zip.cc
--- zip.cc	2001/01/09 14:24:30	1.45
+++ zip.cc	2001/01/16 18:39:17
@@ -233,7 +233,7 @@
 {
   if (! _dirName.isEmpty())
   {
-    bool bOldVal = m_settings->getZipAddRecurseDirs();
+    bool bOldRecVal = m_settings->getZipAddRecurseDirs();
     
     // must be true for add directory - otherwise why would user try?
     m_settings->setZipAddRecurseDirs(true);
@@ -241,7 +241,7 @@
     QStringList list;
     list.append(_dirName);
     addFile(&list);
-    m_settings->setZipAddRecurseDirs(bOldVal); // reset to old val
+    m_settings->setZipAddRecurseDirs(bOldRecVal); // reset to old val
   }
 }
 
@@ -261,8 +261,8 @@
   if (m_settings->getZipStoreSymlinks())
     *kp << "-y";
 
-  if (m_settings->getZipAddJunkDirs())
-    *kp << "-j";
+//  if (m_settings->getZipAddJunkDirs())	// Extraneous
+//    *kp << "-j";
 
   if (m_settings->getZipAddMSDOS())
     *kp << "-k";
@@ -325,7 +325,8 @@
   kdDebug(1601) << "-ZipArch::addFile" << endl;
 }
 
-void ZipArch::unarchFile(QStringList *_fileList, const QString & _destDir)
+void ZipArch::unarchFile(QStringList *_fileList, const QString & _destDir,
+			 bool viewFriendly)
 {
   // if _fileList is empty, we extract all.
   // if _destDir is empty, look at settings for extract directory
@@ -344,7 +345,7 @@
   
   *kp << m_unarchiver_program;
 
-  if (m_settings->getZipExtractJunkPaths())
+  if (m_settings->getZipExtractJunkPaths() && !viewFriendly)
     *kp << "-j" ;
 
   if (m_settings->getZipExtractLowerCase())
Index: zip.h
===================================================================
RCS file: /home/kde/kdeutils/ark/zip.h,v
retrieving revision 1.23
diff -u -r1.23 zip.h
--- zip.h	2000/06/13 20:34:44	1.23
+++ zip.h	2001/01/16 18:39:17
@@ -56,7 +56,8 @@
   virtual void addDir(const QString & _dirName);
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 	
   void testIntegrity();
 
Index: zoo.cc
===================================================================
RCS file: /home/kde/kdeutils/ark/zoo.cc,v
retrieving revision 1.10
diff -u -r1.10 zoo.cc
--- zoo.cc	2001/01/09 14:24:30	1.10
+++ zoo.cc	2001/01/16 18:39:17
@@ -299,7 +299,8 @@
   kdDebug(1601) << "+ZooArch::addFile" << endl;
 }
 
-void ZooArch::unarchFile(QStringList *_fileList, const QString & _destDir)
+void ZooArch::unarchFile(QStringList *_fileList, const QString & _destDir,
+			 bool viewFriendly)
 {
   // if _fileList is empty, we extract all.
   // if _destDir is empty, look at settings for extract directory
Index: zoo.h
===================================================================
RCS file: /home/kde/kdeutils/ark/zoo.h,v
retrieving revision 1.5
diff -u -r1.5 zoo.h
--- zoo.h	2000/06/13 20:34:44	1.5
+++ zoo.h	2001/01/16 18:39:17
@@ -48,7 +48,8 @@
   virtual void addDir(const QString & _dirName);
 
   virtual void remove(QStringList *);
-  virtual void unarchFile(QStringList *, const QString & _destDir="");
+  virtual void unarchFile(QStringList *, const QString & _destDir="",
+			  bool viewFriendly=false);
 
 protected:
   bool m_header_removed, m_finished, m_error;

-- 
The address in the headers is not the poster's real email address.  Do not send
private mail to the poster using your mailer's "reply" feature.  CC's of mail 
to mailing lists are OK.  Problem reports to "postmaster@umail.corel.com".  
The poster's email address is "michaej@corel.com".

Experience CorelDRAW. 10 Graphics Suite - creative power with an
attitude.!
Visit http://www.corel.com/draw10.

 
>> Visit http://master.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic