merge revision(s) 38801,38809,38810: [Backport #7404]

	* ext/bigdecimal/bigdecimal.c (BigDecimal_sub):
	  need to specify precision for converting Rational and Float.
	  [ruby-dev:46544] [Bug #7404]

	* ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.

	* test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes.

	* ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of
	  `TYPE(x) == t`.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@38829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
merge revision(s) 37487,37563: [Backport #7278]

	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
	  don't use /n in universal regexp. [ruby-dev:46394] [Bug #7278]

	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
	  treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278]


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