diff options
Diffstat (limited to 'ext/sdbm')
-rw-r--r-- | ext/sdbm/init.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c index 1e1d5a5868..ddbf384b24 100644 --- a/ext/sdbm/init.c +++ b/ext/sdbm/init.c @@ -92,8 +92,7 @@ fsdbm_close(obj) { struct dbmdata *dbmp; - Data_Get_Struct(obj, struct dbmdata, dbmp); - if (dbmp->di_dbm == 0) closed_sdbm(); + GetDBM(obj, dbmp); sdbm_close(dbmp->di_dbm); dbmp->di_dbm = 0; @@ -322,7 +321,7 @@ fsdbm_store(obj, keystr, valstr) val.dptr = RSTRING(valstr)->ptr; val.dsize = RSTRING(valstr)->len; - Data_Get_Struct(obj, struct dbmdata, dbmp); + GetDBM(obj, dbmp); dbmp->di_size = -1; dbm = dbmp->di_dbm; if (sdbm_store(dbm, key, val, DBM_REPLACE)) { @@ -345,7 +344,7 @@ fsdbm_length(obj) DBM *dbm; int i = 0; - Data_Get_Struct(obj, struct dbmdata, dbmp); + GetDBM(obj, dbmp); if (dbmp->di_size > 0) return INT2FIX(dbmp->di_size); dbm = dbmp->di_dbm; @@ -366,7 +365,7 @@ fsdbm_empty_p(obj) DBM *dbm; int i = 0; - Data_Get_Struct(obj, struct dbmdata, dbmp); + GetDBM(obj, dbmp); if (dbmp->di_size < 0) { dbm = dbmp->di_dbm; |