From d1e7a0dbefeeca0a612f533467323829437b6d37 Mon Sep 17 00:00:00 2001 From: Hajimu UMEMOTO Date: Tue, 28 Apr 2020 10:23:07 +0000 Subject: suppress deprecate warning with Ruby 2.7 PR: 245339 Approved by: maintainer timeout --- databases/ruby-bdb/files/patch-src-cursor.c | 33 ++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) (limited to 'databases/ruby-bdb/files/patch-src-cursor.c') diff --git a/databases/ruby-bdb/files/patch-src-cursor.c b/databases/ruby-bdb/files/patch-src-cursor.c index 4625171352de..e7c31f752202 100644 --- a/databases/ruby-bdb/files/patch-src-cursor.c +++ b/databases/ruby-bdb/files/patch-src-cursor.c @@ -1,6 +1,6 @@ --- src/cursor.c.orig 2011-04-06 19:35:39 UTC +++ src/cursor.c -@@ -29,8 +29,8 @@ bdb_cursor(int argc, VALUE *argv, VALUE +@@ -29,8 +29,8 @@ bdb_cursor(int argc, VALUE *argv, VALUE obj) flags = 0; if (argc && TYPE(argv[argc - 1]) == T_HASH) { VALUE g, f = argv[argc - 1]; @@ -11,3 +11,34 @@ flags = NUM2INT(g); } argc--; +@@ -67,8 +67,10 @@ bdb_cursor_close(VALUE obj) + bdb_DBC *dbcst; + bdb_DB *dbst; + ++#if defined(RUBY_SAFE_LEVEL_MAX) && RUBY_SAFE_LEVEL_MAX >= 4 + if (!OBJ_TAINTED(obj) && rb_safe_level() >= 4) + rb_raise(rb_eSecurityError, "Insecure: can't close the cursor"); ++#endif + GetCursorDB(obj, dbcst, dbst); + bdb_test_error(dbcst->dbc->c_close(dbcst->dbc)); + dbcst->dbc = NULL; +@@ -82,7 +84,9 @@ bdb_cursor_del(VALUE obj) + bdb_DBC *dbcst; + bdb_DB *dbst; + ++#if defined(RUBY_SAFE_LEVEL_MAX) && RUBY_SAFE_LEVEL_MAX >= 4 + rb_secure(4); ++#endif + GetCursorDB(obj, dbcst, dbst); + bdb_test_error(dbcst->dbc->c_del(dbcst->dbc, flags)); + return Qtrue; +@@ -353,7 +357,9 @@ bdb_cursor_put(int argc, VALUE *argv, VALUE obj) + db_recno_t recno; + int ret; + ++#if defined(RUBY_SAFE_LEVEL_MAX) && RUBY_SAFE_LEVEL_MAX >= 4 + rb_secure(4); ++#endif + MEMZERO(&key, DBT, 1); + MEMZERO(&data, DBT, 1); + cnt = rb_scan_args(argc, argv, "21", &a, &b, &c); -- cgit v1.2.3