diff options
Diffstat (limited to 'ext/dbm/dbm.c')
-rw-r--r-- | ext/dbm/dbm.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c index 4bc1ce3e40..8f50e32192 100644 --- a/ext/dbm/dbm.c +++ b/ext/dbm/dbm.c @@ -689,21 +689,20 @@ fdbm_empty_p(VALUE obj) datum key; struct dbmdata *dbmp; DBM *dbm; - int i = 0; GetDBM2(obj, dbmp, dbm); if (dbmp->di_size < 0) { dbm = dbmp->di_dbm; for (key = dbm_firstkey(dbm); key.dptr; key = dbm_nextkey(dbm)) { - i++; + return Qfalse; } } else { - i = (int)dbmp->di_size; + if (!dbmp->di_size) + return Qfalse; } - if (i == 0) return Qtrue; - return Qfalse; + return Qtrue; } /* |