* io.c (io_getpartial): use rb_str_locktmp_ensure().
  [ruby-core:56121] [Bug #8669]

* io.c (rb_io_sysread): ditto.

* test/ruby/test_io.rb: add tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e