file-roller r2414 - in trunk: . src



Author: paobac
Date: Sat Aug  9 06:57:51 2008
New Revision: 2414
URL: http://svn.gnome.org/viewvc/file-roller?rev=2414&view=rev

Log:
2008-08-09  Paolo Bacchilega  <paobac svn gnome org>

	* src/fr-command-7z.c (fr_command_7z_get_capabilities): can't read rar
	archives if the rar module is not present.


Modified:
   trunk/ChangeLog
   trunk/TODO
   trunk/src/fr-command-7z.c

Modified: trunk/TODO
==============================================================================
--- trunk/TODO	(original)
+++ trunk/TODO	Sat Aug  9 06:57:51 2008
@@ -27,4 +27,4 @@
 
 [x] #503940 â Various Archive Manager documentation mistakes
 
-[ ] http://ubuntuforums.org/showthread.php?t=882771
+[x] http://ubuntuforums.org/showthread.php?t=882771

Modified: trunk/src/fr-command-7z.c
==============================================================================
--- trunk/src/fr-command-7z.c	(original)
+++ trunk/src/fr-command-7z.c	Sat Aug  9 06:57:51 2008
@@ -504,11 +504,19 @@
 	if (! is_program_in_path ("7za") && ! is_program_in_path ("7zr") && ! is_program_in_path ("7z"))
 		return capabilities;
 
-	if (is_mime_type (mime_type, "application/x-7z-compressed"))
+	if (is_mime_type (mime_type, "application/x-7z-compressed")) {
 		capabilities |= FR_COMMAND_CAN_READ_WRITE | FR_COMMAND_CAN_ENCRYPT | FR_COMMAND_CAN_ENCRYPT_HEADER | FR_COMMAND_CAN_CREATE_VOLUMES;
-
+	}
 	else if (is_program_in_path ("7z")) {
-		capabilities |= FR_COMMAND_CAN_READ;
+		if (is_mime_type (mime_type, "application/x-rar")
+		    || is_mime_type (mime_type, "application/x-cbr")) 
+		{
+			if (g_file_test ("/usr/lib/p7zip/Codecs/Rar29.so", G_FILE_TEST_EXISTS))
+				capabilities |= FR_COMMAND_CAN_READ;
+		}
+		else
+			capabilities |= FR_COMMAND_CAN_READ;
+		
 		if (is_mime_type (mime_type, "application/x-cbz")
 		    || is_mime_type (mime_type, "application/x-ms-dos-executable")
 		    || is_mime_type (mime_type, "application/zip"))



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]