summaryrefslogtreecommitdiff
path: root/indexing/upmendex/source/fread.c
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-04-04 03:01:17 +0000
committerNorbert Preining <norbert@preining.info>2021-04-04 03:01:17 +0000
commit6c7f24a5336de85c7db50c5037772288964c607b (patch)
tree4196d85bcd0f8af6f97d8f1dc8cbd6f6f075fe58 /indexing/upmendex/source/fread.c
parent76cf94c130ce042b2d2f2fd67258ba5815976abe (diff)
CTAN sync 202104040301
Diffstat (limited to 'indexing/upmendex/source/fread.c')
-rw-r--r--indexing/upmendex/source/fread.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/indexing/upmendex/source/fread.c b/indexing/upmendex/source/fread.c
index 358c21a498..a336022e11 100644
--- a/indexing/upmendex/source/fread.c
+++ b/indexing/upmendex/source/fread.c
@@ -511,35 +511,45 @@ ATTRLOOP:
switch(page_precedence[pattr[cc]]) {
case 'r':
if (strchr("ivxlcdm",p->page[i])==NULL) {
- pattr[cc]++;
+ if (pattr[cc]<strlen(page_precedence)-1)
+ pattr[cc]++;
+ else pattr[cc]=0;
for (j=cc+1;j<3;j++) pattr[j]=0;
goto ATTRLOOP;
}
break;
case 'R':
if (strchr("IVXLCDM",p->page[i])==NULL) {
- pattr[cc]++;
+ if (pattr[cc]<strlen(page_precedence)-1)
+ pattr[cc]++;
+ else pattr[cc]=0;
for (j=cc+1;j<3;j++) pattr[j]=0;
goto ATTRLOOP;
}
break;
case 'n':
if (p->page[i]<'0' || p->page[i]>'9') {
- pattr[cc]++;
+ if (pattr[cc]<strlen(page_precedence)-1)
+ pattr[cc]++;
+ else pattr[cc]=0;
for (j=cc+1;j<3;j++) pattr[j]=0;
goto ATTRLOOP;
}
break;
case 'a':
if (p->page[i]<'a' || p->page[i]>'z') {
- pattr[cc]++;
+ if (pattr[cc]<strlen(page_precedence)-1)
+ pattr[cc]++;
+ else pattr[cc]=0;
for (j=cc+1;j<3;j++) pattr[j]=0;
goto ATTRLOOP;
}
break;
case 'A':
if (p->page[i]<'A' || p->page[i]>'Z') {
- pattr[cc]++;
+ if (pattr[cc]<strlen(page_precedence)-1)
+ pattr[cc]++;
+ else pattr[cc]=0;
for (j=cc+1;j<3;j++) pattr[j]=0;
goto ATTRLOOP;
}