@@ -34,6 +34,12 @@ var WK_ = /*#__PURE__*/ (function() {
3434		var  refguess  =  { s : { r :0 ,  c :0 } ,  e : { r :0 ,  c :0 }  } ; 
3535		var  sheetRows  =  o . sheetRows  ||  0 ; 
3636
37+ 		if ( d [ 2 ]  ==  0x00 )  { 
38+ 			if ( d [ 3 ]  ==  0x08  ||  d [ 3 ]  ==  0x09 )  { 
39+ 				if ( d . length  >=  16  &&  d [ 14 ]  ==  0x05  &&  d [ 15 ]  ===  0x6c )  throw  new  Error ( "Unsupported Works 3 for Mac file" ) ; 
40+ 			} 
41+ 		} 
42+ 
3743		if ( d [ 2 ]  ==  0x02 )  { 
3844			o . Enum  =  WK1Enum ; 
3945			lotushopper ( d ,  function ( val ,  R ,  RT )  {  switch ( RT )  { 
@@ -126,7 +132,8 @@ var WK_ = /*#__PURE__*/ (function() {
126132
127133		write_biff_rec ( ba ,  0x00 ,  write_BOF_WK1 ( 0x0406 ) ) ; 
128134		write_biff_rec ( ba ,  0x06 ,  write_RANGE ( range ) ) ; 
129- 		for ( var  R  =  range . s . r ;  R  <=  range . e . r ;  ++ R )  { 
135+ 		var  max_R  =  Math . min ( range . e . r ,  8191 ) ; 
136+ 		for ( var  R  =  range . s . r ;  R  <=  max_R ;  ++ R )  { 
130137			var  rr  =  encode_row ( R ) ; 
131138			for ( var  C  =  range . s . c ;  C  <=  range . e . c ;  ++ C )  { 
132139				if ( R  ===  range . s . r )  cols [ C ]  =  encode_col ( C ) ; 
@@ -165,7 +172,8 @@ var WK_ = /*#__PURE__*/ (function() {
165172			var  range  =  safe_decode_range ( ws [ "!ref" ] ) ; 
166173			var  dense  =  Array . isArray ( ws ) ; 
167174			var  cols  =  [ ] ; 
168- 			for ( var  R  =  range . s . r ;  R  <=  range . e . r ;  ++ R )  { 
175+ 			var  max_R  =  Math . min ( range . e . r ,  8191 ) ; 
176+ 			for ( var  R  =  range . s . r ;  R  <=  max_R ;  ++ R )  { 
169177				var  rr  =  encode_row ( R ) ; 
170178				for ( var  C  =  range . s . c ;  C  <=  range . e . c ;  ++ C )  { 
171179					if ( R  ===  range . s . r )  cols [ C ]  =  encode_col ( C ) ; 
@@ -211,6 +219,7 @@ var WK_ = /*#__PURE__*/ (function() {
211219			if ( rows  <  range . e . r )  rows  =  range . e . r ; 
212220			if ( cols  <  range . e . c )  cols  =  range . e . c ; 
213221		} 
222+ 		if ( rows  >  8191 )  rows  =  8191 ; 
214223		out . write_shift ( 2 ,  rows ) ; 
215224		out . write_shift ( 1 ,  wscnt ) ; 
216225		out . write_shift ( 1 ,  cols ) ; 
0 commit comments