diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-10-19 19:49:49 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-10-19 19:49:49 +0000 |
commit | b74ce2ebfb9220ff9423458bb0af784fcbc9c3ad (patch) | |
tree | 65b8fd169ee422e1824ee943639d2d1b2b51cd59 | |
parent | 4f15838a101918553f093c46a418e0d4a2d0f041 (diff) | |
download | ruby-b74ce2ebfb9220ff9423458bb0af784fcbc9c3ad.tar.gz ruby-b74ce2ebfb9220ff9423458bb0af784fcbc9c3ad.tar.xz ruby-b74ce2ebfb9220ff9423458bb0af784fcbc9c3ad.zip |
* ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
is a string. [ruby-dev:24490]
* ext/sdbm/init.c (fsdbm_delete_if): ditto.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@7080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | ext/dbm/dbm.c | 1 | ||||
-rw-r--r-- | ext/sdbm/init.c | 1 |
3 files changed, 9 insertions, 0 deletions
@@ -1,3 +1,10 @@ +Wed Oct 20 04:17:55 2004 Yukihiro Matsumoto <matz@ruby-lang.org> + + * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element + is a string. [ruby-dev:24490] + + * ext/sdbm/init.c (fsdbm_delete_if): ditto. + Wed Oct 20 01:37:18 2004 Yukihiro Matsumoto <matz@ruby-lang.org> * array.c (rb_ary_times): Array#* should return an instance of diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c index e72d8ebba..c4f8b2b3f 100644 --- a/ext/dbm/dbm.c +++ b/ext/dbm/dbm.c @@ -356,6 +356,7 @@ fdbm_delete_if(obj) for (i = 0; i < RARRAY(ary)->len; i++) { keystr = RARRAY(ary)->ptr[i]; + StringValue(keystr); key.dptr = RSTRING(keystr)->ptr; key.dsize = RSTRING(keystr)->len; if (dbm_delete(dbm, key)) { diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c index ecd4fd920..eec9e71a3 100644 --- a/ext/sdbm/init.c +++ b/ext/sdbm/init.c @@ -334,6 +334,7 @@ fsdbm_delete_if(obj) for (i = 0; i < RARRAY(ary)->len; i++) { keystr = RARRAY(ary)->ptr[i]; + StringValue(keystr); key.dptr = RSTRING(keystr)->ptr; key.dsize = RSTRING(keystr)->len; if (sdbm_delete(dbm, key)) { |