- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Steve, Colleagues:
A very small number of users of our code are encountering error 38 during an attempt of a binary file write:
- forrtl: The supplied user buffer is not valid for the requested operation.
- forrtl: severe (38): error during write. unit 2, file . . . . .
Here is the section of code involved
open(2,file = filespath(1:len_trim(filespath)) //'SurfaceGroupingIntoObjects.dat',form='binary', err=999, iostat=IOstat, buffered = 'yes', buffercount = 2, blocksize=1048576) do k = 1,NumEnclosingObjects write(2, err=999, iostat=IOstat) MappingEnclosingObjects(k) write(2, err=999, iostat=IOstat) ObjectContainsObject(MappingEnclosingObjects(k),0:ObjectContainsObject(MappingEnclosingObjects(k),0)) end do
The error occurs in the loop, not on the 1st iteration but after several (successful) writes. Any ideas?
David DiLaura
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Compiler version? Amount of data being written? We'd probably need a complete test case to look into this further. I'm aware of some issues we had regarding buffer positioning on reads, but not writes.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page