Work round ruby's half assed Tempfile class which, because for some

reason it is implemented by delegating to File (by inheriting from
DelegateClass(File)) rather than by inheriting from it, does not
actually look like a File, and hence does not look like an IO (in
that it does not respond to kind_of? IO calls).

In ruby 1.8.5 this doesn't matter as REXML checks that the source
it has been given responds to the methods it wants (using respond_to?
which is handled properly by DelegateClass) but in 1.8.4 which we
are running on rails2 REXML uses kind_of? to see if the source is
one it can use.
This commit is contained in:
Tom Hughes 2008-03-06 12:43:10 +00:00
parent 58082d128a
commit c0d2ad40c3
2 changed files with 17 additions and 8 deletions

View file

@ -0,0 +1,7 @@
# Hack TempFile to let us get at the underlying File object as ruby
# does a half assed job of making TempFile act as a File
class Tempfile
def file
return @tmpfile
end
end