diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ext/dbm/dbm.c | 2 | ||||
-rw-r--r-- | ext/sdbm/init.c | 2 |
3 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,11 @@ +Sat Oct 26 04:38:25 2002 Akinori MUSHA <knu@iDaemons.org> + + * ext/dbm/dbm.c (fdbm_indexes, fdbm_select): add a missing + argument and prevent coredump when a nonexistent key is + specified. + + * ext/sdbm/init.c (fsdbm_indexes, fsdbm_select): ditto. + Sat Oct 26 04:36:01 2002 Akinori MUSHA <knu@iDaemons.org> * eval.c, gc.c: use a common set of alloca() #ifdef's. This fixes diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c index b0446d1060..94b07712c3 100644 --- a/ext/dbm/dbm.c +++ b/ext/dbm/dbm.c @@ -224,7 +224,7 @@ fdbm_indexes(argc, argv, obj) new = rb_ary_new2(argc); for (i=0; i<argc; i++) { - rb_ary_push(new, fdbm_fetch(obj, argv[i])); + rb_ary_push(new, fdbm_fetch(obj, argv[i], Qnil)); } return new; diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c index 458695fc2b..2cb0ad5e5c 100644 --- a/ext/sdbm/init.c +++ b/ext/sdbm/init.c @@ -210,7 +210,7 @@ fsdbm_indexes(argc, argv, obj) new = rb_ary_new2(argc); for (i=0; i<argc; i++) { - rb_ary_push(new, fsdbm_fetch(obj, argv[i])); + rb_ary_push(new, fsdbm_fetch(obj, argv[i], Qnil)); } return new; |