aboutsummaryrefslogtreecommitdiff
path: root/project/src/lib-szs-create.c
diff options
context:
space:
mode:
authorWiimm <wiimm@wiimm.de>2022-08-06 16:20:07 +0200
committerWiimm <wiimm@wiimm.de>2022-08-06 16:20:07 +0200
commit7fad9e9383d01cce3ac17176404e1ab4e738736c (patch)
treedf39dd0616554ce9daa138f2e9778c88fbf9ac55 /project/src/lib-szs-create.c
parent06ff18cd020779c226f7c25d22016e06b898f303 (diff)
SZS v2.28a.beta2
Diffstat (limited to 'project/src/lib-szs-create.c')
-rw-r--r--project/src/lib-szs-create.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/project/src/lib-szs-create.c b/project/src/lib-szs-create.c
index 8d394b7..d268a44 100644
--- a/project/src/lib-szs-create.c
+++ b/project/src/lib-szs-create.c
@@ -1727,10 +1727,15 @@ static int add_missing_file
InitializeLEX(&lex);
if ( PatchLEX(&lex,&am->szs->have) && CreateRawLEX(&lex) == ERR_OK )
size = lex.raw_data_size;
+ PRINT0("LEX size=%lld\n",size);
}
szs_subfile_t *file = 0;
- if (am->sd)
+ if (!size)
+ {
+ // [[2do]] maybe remove "course.lex" from list
+ }
+ else if (am->sd)
{
file = AppendSubfileSZS(am->szs,0,0);
DASSERT(file);
@@ -1891,6 +1896,7 @@ void AddSectionsLEX ( szs_file_t *szs, szs_norm_t *norm, const szs_have_t * have
{
features_szs_t fs;
SetupFeaturesSZS(&fs,have,true);
+ //PRINT1("GetFeaturesStatusSZS()=%d\n",GetFeaturesStatusSZS(&fs));
if ( GetFeaturesStatusSZS(&fs) > 1 )
add_course_lex = true;
ResetFeaturesSZS(&fs);
@@ -2549,7 +2555,7 @@ static int transform_collect_func
break;
case FF_LEX:
- if ( !szs->allow_ext_data || !HavePatchTestLEX())
+ if ( !szs->allow_ext_data || !HavePatchLEX() )
{
PRINT("### Patch/NOT LEX: %s\n",it->name);
break;
@@ -2670,7 +2676,10 @@ bool PatchSZS ( szs_file_t * szs )
if ( szs->data && szs->size )
{
if (patch_lex)
+ {
+ CalcHaveSZS(szs);
dirty |= NormalizeExSZS(szs,0,0,0);
+ }
if ( have_patch_count > 0 || opt_lex_purge )
{
@@ -2704,7 +2713,10 @@ void CalcHaveSZS ( szs_file_t * szs )
{
szs_file_t temp;
CopySZS(&temp,true,szs);
+ analyse_szs_t as;
+ AnalyseSZS(&as,true,&temp,temp.fname);
szs->have = temp.have;
+ ResetAnalyseSZS(&as);
ResetSZS(&temp);
}
}