diff --git a/xlhtml/xlhtml.c b/xlhtml/xlhtml.c
index 9574c99..3fc974f 100644
--- a/xlhtml/xlhtml.c
+++ b/xlhtml/xlhtml.c
@@ -27,86 +27,8 @@
#include "tuneable.h"
#include "xlhtml.h"
-static char SectionName[2][12] = /* The section of the Excel Stream where the workbooks are kept */
-{
- "/Workbook", /*!< Excel 97 & 2000 */
- "/Book" /*!< Everything else ? */
-};
-typedef struct /*!< This encapsulates the Unicode String */
-{
- U8 uni; /*!< Unicode String: 0==ASCII/8859-1, 1==windows-1252, 2==utf-8 */
- U8 *str; /*!< Characters of string */
- U16 len; /*!< Length of string */
- U8 *fmt_run; /*!< formatting run, short pairs: offset, index to font */
- U8 crun_cnt; /*!< The count of format runs */
-}uni_string;
-
-typedef struct /*!< This is everything we need for a cell */
-{
- U16 xfmt; /*!< The high bit will tell us which version 0 =< 2; 1 == 2+ */
- U16 type; /*!< This will record the record type that generated the cell */
- U16 spanned; /*!< If 1 don't output */
- uni_string ustr; /*!< The cell's displayed contents */
- U16 rowspan; /*!< rows to span */
- U16 colspan; /*!< columns to span */
- uni_string h_link; /*!< If a hyperlinked cell, this is the link*/
-}cell;
-
-typedef struct /*!< This encapsulates some information about each worksheet */
-{
- U32 first_row;
- S32 biggest_row;
- U32 max_rows;
- U16 first_col;
- S16 biggest_col;
- U16 max_cols;
- uni_string ws_title;
- cell **c_array;
- U16 spanned;
-}work_sheet;
-
-typedef struct /*!< This is everything we need to know about fonts */
-{
- U16 size;
- U16 attr;
- U16 c_idx;
- U16 bold;
- U16 super;
- U8 underline;
- uni_string name;
-}font_attr;
-
-typedef struct
-{
- uni_string *name;
- U16 cnt;
-}fnt_cnt;
-
-typedef struct /*!< This covers the Extended Format records */
-{
- U16 fnt_idx;
- U16 fmt_idx;
- U16 gen;
- U16 align;
- U16 indent;
- U16 b_style;
- U16 b_l_color;
- U32 b_t_color;
- U16 cell_color;
-}xf_attr;
-
-typedef struct /*!< HTML Attribute */
-{
- int fflag; /*!< Font Flag */
- int bflag; /*!< Bold Flag */
- int iflag; /*!< Itallic Flag */
- int sflag; /*!< Strike thru flag */
- int uflag; /*!< Underline flag */
- int sbflag; /*!< Subscript */
- int spflag; /*!< Superscript */
-}html_attr;
static int numCustomColors = 0;
@@ -251,7 +173,7 @@ static void add_xf_array(U16 fnt_idx, U16 fmt_idx, U16 gen, U16 align,
/* Global data */
-static char filename[128];
+static char filename[256];
static int file_version = 0;
static U32 next_string=0;
static unsigned int next_font=0, next_ws_title=0, next_xf=0;
@@ -345,8 +267,8 @@ int main (int argc, char **argv)
}
else
{
- strncpy(filename, argv[argc-1], 124);
- filename[124] = 0;
+ strncpy(filename, argv[argc-1], 252);
+ filename[252] = 0;
for (i=1; i<(argc-1); i++)
{
if (strcmp(argv[i], "-nc") == 0)
diff --git a/xlhtml/xlhtml.h b/xlhtml/xlhtml.h
index 221a85c..2f11f74 100644
--- a/xlhtml/xlhtml.h
+++ b/xlhtml/xlhtml.h
@@ -42,3 +42,82 @@ U16 HARD_MAX_ROWS = HARD_MAX_ROWS_97;
#define GLOBAL_UMASK (2)
#endif
+typedef struct /*!< This encapsulates the Unicode String */
+{
+ U8 uni; /*!< Unicode String: 0==ASCII/8859-1, 1==windows-1252, 2==utf-8 */
+ U8 *str; /*!< Characters of string */
+ U16 len; /*!< Length of string */
+ U8 *fmt_run; /*!< formatting run, short pairs: offset, index to font */
+ U8 crun_cnt; /*!< The count of format runs */
+}uni_string;
+
+typedef struct /*!< This is everything we need for a cell */
+{
+ U16 xfmt; /*!< The high bit will tell us which version 0 =< 2; 1 == 2+ */
+ U16 type; /*!< This will record the record type that generated the cell */
+ U16 spanned; /*!< If 1 don't output */
+ uni_string ustr; /*!< The cell's displayed contents */
+ U16 rowspan; /*!< rows to span */
+ U16 colspan; /*!< columns to span */
+ uni_string h_link; /*!< If a hyperlinked cell, this is the link*/
+}cell;
+
+typedef struct /*!< This encapsulates some information about each worksheet */
+{
+ U32 first_row;
+ S32 biggest_row;
+ U32 max_rows;
+ U16 first_col;
+ S16 biggest_col;
+ U16 max_cols;
+ uni_string ws_title;
+ cell **c_array;
+ U16 spanned;
+}work_sheet;
+
+typedef struct /*!< This is everything we need to know about fonts */
+{
+ U16 size;
+ U16 attr;
+ U16 c_idx;
+ U16 bold;
+ U16 super;
+ U8 underline;
+ uni_string name;
+}font_attr;
+
+typedef struct
+{
+ uni_string *name;
+ U16 cnt;
+}fnt_cnt;
+
+typedef struct /*!< This covers the Extended Format records */
+{
+ U16 fnt_idx;
+ U16 fmt_idx;
+ U16 gen;
+ U16 align;
+ U16 indent;
+ U16 b_style;
+ U16 b_l_color;
+ U32 b_t_color;
+ U16 cell_color;
+}xf_attr;
+
+typedef struct /*!< HTML Attribute */
+{
+ int fflag; /*!< Font Flag */
+ int bflag; /*!< Bold Flag */
+ int iflag; /*!< Itallic Flag */
+ int sflag; /*!< Strike thru flag */
+ int uflag; /*!< Underline flag */
+ int sbflag; /*!< Subscript */
+ int spflag; /*!< Superscript */
+}html_attr;
+
+static char SectionName[2][12] = /* The section of the Excel Stream where the workbooks are kept */
+{
+ "/Workbook", /*!< Excel 97 & 2000 */
+ "/Book" /*!< Everything else ? */
+};