зеркало из https://github.com/github/ruby.git
* 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
This commit is contained in:
Родитель
ca9b0f56fc
Коммит
eac1d9cfca
|
@ -1,3 +1,11 @@
|
|||
Wed Feb 22 06:02:42 2012 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* ext/dbm/dbm.c (fdbm_initialize): disable Berkeley DB error messages.
|
||||
|
||||
* ext/dbm/extconf.rb: check DBC type for above.
|
||||
|
||||
[ruby-dev:45269]
|
||||
|
||||
Tue Feb 21 20:23:47 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* hash.c (rb_any_hash): treat Qundef like as other special constants.
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -222,6 +222,11 @@ def headers.db_check2(db, hdr)
|
|||
return false
|
||||
end
|
||||
|
||||
# DBC type is required to disable error messages by Berkeley DB 2 or later.
|
||||
if have_db_header
|
||||
have_type("DBC", hdr, hsearch)
|
||||
end
|
||||
|
||||
if hsearch
|
||||
$defs << hsearch
|
||||
@defs = hsearch
|
||||
|
|
Загрузка…
Ссылка в новой задаче