From: Koji Arai Date: 2001-05-01T01:05:15+09:00 Subject: [ruby-dev:13070] Re: patch for ext/gdbm 新井です。 In message "[ruby-dev:13067] Re: patch for ext/gdbm" on 01 May 2001 00:42:43 +0900, Koji Arai wrote: > 新井です。 > すみません。GDBM#delete_if はちょっと甘かったです。 > 追加パッチつけます。 あー、もう。何度も何度も何度もごめんなさい。_o_ # テストが通ったのが悔しい --- gdbm.c.bak2 Tue May 1 00:42:28 2001 +++ gdbm.c Tue May 1 00:47:03 2001 @@ -426,13 +426,12 @@ ret = rb_protect(rb_yield, rb_assoc_new(rb_str_dup(keystr), valstr), &status); if (status != 0) { - dbmp->di_size -= 1; - goto delete; + dbmp->di_size = -1; + break; } if (RTEST(ret)) rb_ary_push(ary, keystr); } - delete: for (i = 0; i < RARRAY(ary)->len; i++) rb_gdbm_delete(obj, RARRAY(ary)->ptr[i]); if (status) rb_jump_tag(status);