Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.

Re: 20050114: Bug? in ucar.unidata.io.RandomAccessFile NetCDF for Java

Hi Steve:

Unidata Support wrote:

To: support@xxxxxxxxxxxxxxxx
From: "Stephen P. Cerruti" <s.cerruti@xxxxxxxxxxxx>
Subject: Bug? in ucar.unidata.io.RandomAccessFile NetCDF for Java
Organization: Keywords: 200501141454.j0EEsxv2011929

I am using ucar.unidata.io.RandomAccessFile in another application to speed processing of some corrupted tiff files.

I discovered that when writing out large chunks of data when the buffer was unmodified the file pointer was not in the correct position.

580c580,581
<            bufferStart = dataEnd = dataSize = 0;
---
>            bufferStart = dataEnd = dataSize = 0;
>            file.seek(filePosition); // JC added Oct 21, 2004
582,583d582
<          file.seek(filePosition); // JC added Oct 21, 2004
<
Im not sure what you are diffing here? The 2 look identical. Is the above code incorrect?

Also, and I don't know if this was intentional, but ReadUnsignedShort is not swapping bytes.

737,740c736
<       if (bigEndian)
<         return (short)((ch1 << 8) + (ch2 << 0));
<       else
<         return (short)((ch2 << 8) + (ch1 << 0));
---
>       return (ch1 << 8) + (ch2 << 0);
thanks, that was inadvertant; ill add in your fix

Thanks for the class.
youre welcome, thanks for your feedback


  • 2005 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdf-java archives: