[gnumeric] xls: fix export of links for biff5.



commit 5a207afc984376f88cd88a449f6cbdf79dfd3ddd
Author: Morten Welinder <terra gnome org>
Date:   Wed Jun 5 15:37:27 2013 -0400

    xls: fix export of links for biff5.

 NEWS                           |    1 +
 plugins/excel/ChangeLog        |    6 ++++++
 plugins/excel/ms-excel-write.c |    9 ++++++---
 3 files changed, 13 insertions(+), 3 deletions(-)
---
diff --git a/NEWS b/NEWS
index 8703f25..d4e7aef 100644
--- a/NEWS
+++ b/NEWS
@@ -44,6 +44,7 @@ Morten:
        * Fix critical when last row deleted.
        * Fix criticals in about dialog.
        * Introspection fixes.
+       * Fix xls/biff5 link export.  [#701604]
 
 --------------------------------------------------------------------------
 Gnumeric 1.12.2
diff --git a/plugins/excel/ChangeLog b/plugins/excel/ChangeLog
index 4815a3e..cf65475 100644
--- a/plugins/excel/ChangeLog
+++ b/plugins/excel/ChangeLog
@@ -1,3 +1,9 @@
+2013-06-05  Morten Welinder  <terra gnome org>
+
+       * ms-excel-write.c (excel_write_HLINKs): Don't remove hlinks here.
+       (excel_sheet_new): Collect hlinks regardless of biff version.
+       Fixes #701604.
+
 2013-05-27  Andreas J. Guelzow <aguelzow pyrshep ca>
 
        * xlsx-read.c (xlsx_ext_begin): new
diff --git a/plugins/excel/ms-excel-write.c b/plugins/excel/ms-excel-write.c
index cb2c459..55eb976 100644
--- a/plugins/excel/ms-excel-write.c
+++ b/plugins/excel/ms-excel-write.c
@@ -1409,8 +1409,6 @@ excel_write_HLINKs (BiffPut *bp, ExcelWriteSheet *esheet)
                        ms_biff_put_commit (bp);
                }
        }
-       style_list_free (esheet->hlinks);
-       esheet->hlinks = NULL;
 }
 
 static void
@@ -5516,9 +5514,14 @@ excel_sheet_new (ExcelWriteState *ewb, Sheet *sheet,
        if (esheet->max_row > maxrows)
                esheet->max_row = maxrows;
 
+       /*
+        * Supposedly biff8 only, but just let readers ignore what they
+        * cannot handle.
+        */
+       esheet->hlinks = sheet_style_collect_hlinks (sheet, NULL);
+
        if (biff8) {
                esheet->conditions  = sheet_style_collect_conditions (sheet, NULL);
-               esheet->hlinks      = sheet_style_collect_hlinks (sheet, NULL);
                esheet->validations = sheet_style_collect_validations (sheet, NULL);
        }
 


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