[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[McIDAS #PWA-370743]: Mcidas--FRMOLAY not returning error code?
- Subject: [McIDAS #PWA-370743]: Mcidas--FRMOLAY not returning error code?
- Date: Sat, 14 Apr 2007 17:45:40 -0600
Hi again Bill,
After thinking for awhile, it dawned on me that the method being
used to stop execution in FRMOLAY was incorrect. The code set
an error status in a 'call mccodeset(code)', printed out a message
and then did a 'STOP'. 'STOP' in Fortran returns a zero error
status, so the exit status of FRMOLAY was always zero.
I fixed the exiting problem by changing the code in subroutine finish
to:
subroutine finish(mesg, code)
implicit none
character*(*) mesg
integer code
call edest(mesg, code)
call edest('DONE', 0)
call m0exit( code )
return
I added this fix to a new addendum for v2006, v2006g. You can implement
the change easily by:
<as 'mcidas'>
cd ~mcidas/mcidas2006/src
-- edit frmolay.pgm and change the contents of subroutine finish to match
the code above
make frmolay.k
rm ~/bin/frmolay.k
ln frmolay.k ~/bin
After making the change and building a new executable, you should remove
the 'IF ERRORCODE GOTO END' line (as per my previous email) from your
BATCH file as it is not needed.
One last comment: it should not be necessary to include the CONTINUE=NO
keyword sequence in your BATCH execution. Not continuing in the face
of an error in any routine run from the BATCH file is the default.
One needs to add CONTINUE=YES if s/he wants processing to continue.
Cheers,
Tom
****************************************************************************
Unidata User Support UCAR Unidata Program
(303) 497-8642 P.O. Box 3000
address@hidden Boulder, CO 80307
----------------------------------------------------------------------------
Unidata HomePage http://www.unidata.ucar.edu
****************************************************************************
Ticket Details
===================
Ticket ID: PWA-370743
Department: Support McIDAS
Priority: Normal
Status: Closed