In Ruby 1.8.7, StringIO responds to path, but in 1.9.2, it no longer does, which causes UploadIO to break (composite_io.rb:69).
An easy solution would be to check for obj.respond_to? :path ? obj.path : "no local path" (in my tests, supplying a dummy local path seems to work), but I don't know if that causes problems down the line. If not, one of us could write a pull request.
Thanks for the great gem!
Alex