I'm viewing the revision log for a file in my Subversion repository using SVN::WEB. It shows the changes between revision 394 and the previous revision of the file (379). The programmer who checked in the changes agrees that what SVN::WEB shows in the revsion log matches her recollection of what she changed in the file and committed to the repository. No other revisions on the file have been committed; 379 was the initial copy of the trunk into a branch, and 394 was the only revision to be committed on the file in that branch.
However, when I check out revision 394 from the repo, none of the changes reported by SVN::WEB are actually in the file.
How is it possible that the file at revision 394 does not reflect what SVN::WEB shows are the differences between 394 and 379? The changes are significant and non-trivial, not just whitespace or indentation. I'm talking about dozens of new lines of code being added, and dozens of old lines being deleted. Furthermore, TortoiseSVN correctly reports the differences between the two revisions.
Is this a bug in SVN::WEB? Are diff outputs cached somewhere?