If viewing local files via file:/// only if the file is of stream-lf format does it display correctly. Well, maybe that's an exageration. The most popular record format is Variable Length, and that doesn't display. I haven't checked the other record formats yet.
Here's the complete list: Variable Length Fail VFC Fail Fixed Success Stream Fail Stream-LF Success Stream-CR Success
The local file handling code now expects the size of a file reported by stat() to be correct, otherwise the last "chunk" of the file isn't processed. On OpenVMS stat() reports the number of bytes in the file as seen by the file system, but since that number includes file system meta-data it is NOT necessarily the number of data bytes that will be read by read(). For stream-LF, stream-CR, and fixed record formats, there isn't any meta-data and so the stat number is correct. For all the other record types we always reach EOF before reading in what we think is all the data. The fix is to have nsLocalFile::GetFileSize return an error status to signify that we don't know the true file size.
I have a fix and will attach the patch next. I decided not to allow fixed length files to pass the stat test since it depends upon the record attributes whether or not the stat size value is correct.
via mail: a=leaf for checkin to MOZILLA_0_6_BRANCH r=dougt
This is checked in to MOZILLA_0_6_BRANCH, but I'm still waiting for approval for the trunk.
Fix the patch to use a bracing and parenthesizing style that is consistent with the rest of this file. Do that, and a=waterson
Revised patch checked in to trunk.