From eac1d9cfcad5d2d56951e540eb7023eccf7a3593 Mon Sep 17 00:00:00 2001 From: akr Date: Tue, 21 Feb 2012 21:04:04 +0000 Subject: * ext/dbm/dbm.c (fdbm_initialize): disable Berkeley DB error messages. * ext/dbm/extconf.rb: check DBC type for above. [ruby-dev:45269] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/dbm/dbm.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'ext/dbm/dbm.c') diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c index d6d1f4959a..30f0d9d504 100644 --- a/ext/dbm/dbm.c +++ b/ext/dbm/dbm.c @@ -196,6 +196,12 @@ fdbm_initialize(int argc, VALUE *argv, VALUE obj) #if defined(HAVE_DBM_DIRFNO) rb_fd_fix_cloexec(dbm_dirfno(dbm)); #endif + +#if defined(_DB_H_) && defined(HAVE_TYPE_DBC) + /* Disable Berkeley DB error messages such as: + * DB->put: attempt to modify a read-only database */ + ((DBC*)dbm)->dbp->set_errfile(((DBC*)dbm)->dbp, NULL); +#endif } if (!dbm) { -- cgit v1.2.3