merge revision(s) r45676,r45677: [Backport #9769]

	stringio.c: move GC guard

	* ext/stringio/stringio.c (strio_write): move GC guard after the
  last using position.
	* ext/stringio/stringio.c (strio_write): use rb_str_append to
	  reuse coderange bits other than ASCII-8BIT, and keep
	  taintedness.  [ruby-dev:48118] [Bug #9769]


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