From 75b30afd0aed6a4486229cfa6386f33c8006af91 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Sat, 30 May 2015 13:32:54 +0000 Subject: [PATCH] fpspreadsheet: Fix biff2 reader interpreting "general" number format as nfCustom. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4163 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/fpspreadsheet/fpsnumformatparser.pas | 8 ++++++++ components/fpspreadsheet/xlsbiff2.pas | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/components/fpspreadsheet/fpsnumformatparser.pas b/components/fpspreadsheet/fpsnumformatparser.pas index 1d08996de..0a9338c96 100644 --- a/components/fpspreadsheet/fpsnumformatparser.pas +++ b/components/fpspreadsheet/fpsnumformatparser.pas @@ -301,6 +301,14 @@ begin section := @FSections[ASection]; section^.Kind := []; + if (ASection = 0) and (Length(FSections) = 1) and (Length(section^.Elements) = 1) + and (section^.Elements[0].Token = nftGeneral) + then begin + section^.NumFormat := nfGeneral; + exit; + end; + + i := 0; isMonthMinute := false; diff --git a/components/fpspreadsheet/xlsbiff2.pas b/components/fpspreadsheet/xlsbiff2.pas index 0b380a121..41375fd80 100755 --- a/components/fpspreadsheet/xlsbiff2.pas +++ b/components/fpspreadsheet/xlsbiff2.pas @@ -934,7 +934,8 @@ begin nf := Workbook.GetNumberFormat(fmt.NumberFormatIndex); fmt.NumberFormat := nf.NumFormat; fmt.NumberFormatStr := nf.NumFormatStr; - Include(fmt.UsedFormattingFields, uffNumberFormat); + if fmt.NumberFormat <> nfGeneral then + Include(fmt.UsedFormattingFields, uffNumberFormat); end; // Horizontal alignment