From 910ae58672ba9b3d0d2b12648e6533b77b3cb3eb Mon Sep 17 00:00:00 2001 From: Jeff Ator Date: Fri, 25 Oct 2024 21:00:39 +0000 Subject: [PATCH] increase maximum message size in debufr utility --- src/jumplink.F90 | 8 +++----- src/openclosebf.F90 | 7 ++++++- utils/debufr.F90 | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/jumplink.F90 b/src/jumplink.F90 index af53fe86..94015d27 100644 --- a/src/jumplink.F90 +++ b/src/jumplink.F90 @@ -206,7 +206,9 @@ subroutine makestab ! Set up expansion segments for type 'SUB', 'DRP', and 'DRS' nodes. newn = 0 - + do k=1,maxjl + knt(k) = 0 + enddo do n=1,ntab iseq(n,1) = 0 iseq(n,2) = 0 @@ -215,15 +217,11 @@ subroutine makestab iseq(n,1) = newn+1 noda = n node = n+1 - do k=1,maxjl - knt(k) = 0 - enddo if(typ(noda)=='REP') then knt(node) = knti(noda) else knt(node) = 1 endif - outer: do while (.true.) newn = newn+1 if(newn>maxjl) then diff --git a/src/openclosebf.F90 b/src/openclosebf.F90 index 0356e763..d7f2523c 100644 --- a/src/openclosebf.F90 +++ b/src/openclosebf.F90 @@ -720,7 +720,12 @@ subroutine rewnbf(lunit,isr) call bort(bort_str) endif elseif(isr==1) then - if(junn==0 .or. jsr(junn)/=1) then + if(junn==0) then + write(bort_str,'("BUFRLIB: REWNBF - ATTEMPING TO RESTORE '// & + 'PARAMETERS TO BUFR FILE WHICH WERE NEVER SAVED (UNIT",I3,")")') lunit + call bort(bort_str) + endif + if(jsr(junn)/=1) then write(bort_str,'("BUFRLIB: REWNBF - ATTEMPING TO RESTORE '// & 'PARAMETERS TO BUFR FILE WHICH WERE NEVER SAVED (UNIT",I3,")")') lunit call bort(bort_str) diff --git a/utils/debufr.F90 b/utils/debufr.F90 index 21b0b617..e94ecf75 100644 --- a/utils/debufr.F90 +++ b/utils/debufr.F90 @@ -60,7 +60,7 @@ subroutine fdebufr_c ( ofile, lenof, tbldir, lentd, tblfil, lentf, prmstg, lenps implicit none - integer, parameter :: mxbf = 2500000 + integer, parameter :: mxbf = 7500000 integer, parameter :: mxbfd4 = mxbf/4 integer, parameter :: mxds3 = 500 integer, parameter :: mxprms = 20