From 4ec244bbcbce068fb944b2d628ee1c34c07ebc34 Mon Sep 17 00:00:00 2001 From: Edoardo Apra Date: Thu, 12 Jan 2012 00:00:15 +0000 Subject: [PATCH] more eafhack fixes --- src/nwdft/grid/grid_eaf.F | 9 +++++++++ src/nwdft/grid/grid_file.F | 5 ++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/nwdft/grid/grid_eaf.F b/src/nwdft/grid/grid_eaf.F index f0e13e271b..1256c38363 100644 --- a/src/nwdft/grid/grid_eaf.F +++ b/src/nwdft/grid/grid_eaf.F @@ -7,6 +7,7 @@ C $Id$ #include "stdio.fh" #include "util.fh" #include "inp.fh" +#include "mafdecls.fh" integer fdg character*(*) grinfo, what double precision enuc_in @@ -14,6 +15,7 @@ c integer ierr character*80 errmsg double precision offset + integer uvect(4) logical otrace c otrace = util_print('grinfodebug',print_debug) @@ -37,6 +39,13 @@ cgrinfo enuc in first record if(what.eq.'write') then ierr = eaf_write(fdg, offset, enuc_in, . 8) +cdump garbage on next record to invalidate fields + uvect(1)=-123 + uvect(2)=-123 + uvect(3)=-123 + uvect(4)=-123 + ierr = eaf_write(fdg, 8d0, uvect, + . 4*ma_sizeof(mt_int,1,mt_byte)) else ierr = eaf_read(fdg, offset, enuc_in, . 8) diff --git a/src/nwdft/grid/grid_file.F b/src/nwdft/grid/grid_file.F index 5df84e9fd6..fd20c2f09a 100644 --- a/src/nwdft/grid/grid_file.F +++ b/src/nwdft/grid/grid_file.F @@ -248,10 +248,10 @@ c $ call eaf_print_stats(fd) if (eaf_close(fd) .ne. 0) call errquit $ ('grid_file_close: eaf_close failed',0, DISK_ERR) - if (.not. okeep) then #ifdef EAFHACK fd=-1 #endif + if (.not. okeep) then if (eaf_delete(actualname) .ne. 0) call errquit $ ('grid_file_close: delete failed', 0, DISK_ERR) endif @@ -271,11 +271,10 @@ cold if(lstatus) then L file_opened)) goto 199 if (eaf_close(fdg) .ne. 0) call errquit $ ('grid_file_close: eaf_close failed',0, DISK_ERR) + fdg=-1 endif else -#ifdef EAFHACK fdg=-1 -#endif if (eaf_delete(grinfo) .ne. 0)goto 2001 endif c