gnumeric r17182 - trunk/plugins/excel



Author: mortenw
Date: Tue Mar 10 20:54:41 2009
New Revision: 17182
URL: http://svn.gnome.org/viewvc/gnumeric?rev=17182&view=rev

Log:
2009-03-10  Morten Welinder  <terra gnome org>

	* ms-excel-read.c (ms_biff_bof_data_new): Handle BIFF_BOF_v8
	records indicating MS_BIFF_V2/MS_BIFF_V3/MS_BIFF_V4 files.  (And
	indicating broken tools too, of course.)




Modified:
   trunk/plugins/excel/ChangeLog
   trunk/plugins/excel/ms-excel-read.c

Modified: trunk/plugins/excel/ms-excel-read.c
==============================================================================
--- trunk/plugins/excel/ms-excel-read.c	(original)
+++ trunk/plugins/excel/ms-excel-read.c	Tue Mar 10 20:54:41 2009
@@ -1283,11 +1283,25 @@
 			});
 
 			switch (GSF_LE_GET_GUINT16 (q->non_decrypted_data)) {
-			case 0x0600: ans->version = MS_BIFF_V8;
-				     break;
+			case 0x0600:
+				ans->version = MS_BIFF_V8;
+				break;
 			case 0x0500: /* * OR ebiff7: FIXME ? !  */
-				     ans->version = MS_BIFF_V7;
-				     break;
+				ans->version = MS_BIFF_V7;
+				break;
+			/* The following are non-standard records written
+			   by buggy tools.  Taken from OO docs.  */
+			case 0x0400:
+				ans->version = MS_BIFF_V4;
+				break;
+			case 0x0300:
+				ans->version = MS_BIFF_V3;
+				break;
+			case 0x0200:
+			case 0x0007:
+			case 0x0000:
+				ans->version = MS_BIFF_V2;
+				break;
 			default:
 				g_printerr ("Unknown BIFF sub-number 0x%X in BOF %x\n",
 					 GSF_LE_GET_GUINT16 (q->non_decrypted_data), q->opcode);



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