From e4518c5bde0f72723d784ba142df46df6407915b Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 1 Jan 2014 18:43:13 +0000 Subject: dbm.c: yield dup of keystr * ext/dbm/dbm.c (fdbm_fetch): yield dup of keystr, to make it shared and get rid of use of uninitialized variable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/dbm/test_dbm.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test') diff --git a/test/dbm/test_dbm.rb b/test/dbm/test_dbm.rb index 9f7604be15..083a5c25ba 100644 --- a/test/dbm/test_dbm.rb +++ b/test/dbm/test_dbm.rb @@ -58,6 +58,14 @@ if defined? DBM assert_nil(@dbm_rdonly.delete("bar")) end end + + def test_fetch_not_found + notfound = nil + result = Object.new + assert_same(result, @dbm_rdonly.fetch("bar") {|k| notfound = k; result}) + assert_equal("bar", notfound) + assert_predicate(notfound, :tainted?) + end end class TestDBM < Test::Unit::TestCase -- cgit v1.2.3