summaryrefslogtreecommitdiff
path: root/databases/ruby-bdb/files/extra-patch-src-common.c-21
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2015-03-30 13:16:20 +0000
committerSteve Wills <swills@FreeBSD.org>2015-03-30 13:16:20 +0000
commitb4b3c4d8ab8f99a5714554f47fb247bd9181e029 (patch)
treee98e3e8deb2d5f3f95f7a6302193eae727cf1466 /databases/ruby-bdb/files/extra-patch-src-common.c-21
parentUpdate to 0.9.11.17.986 (diff)
databases/ruby-bdb: fix build with ruby 2.1 and 2.2
With hat: ruby@
Diffstat (limited to 'databases/ruby-bdb/files/extra-patch-src-common.c-21')
-rw-r--r--databases/ruby-bdb/files/extra-patch-src-common.c-2172
1 files changed, 72 insertions, 0 deletions
diff --git a/databases/ruby-bdb/files/extra-patch-src-common.c-21 b/databases/ruby-bdb/files/extra-patch-src-common.c-21
new file mode 100644
index 000000000000..4cc0727fd326
--- /dev/null
+++ b/databases/ruby-bdb/files/extra-patch-src-common.c-21
@@ -0,0 +1,72 @@
+--- src/common.c.orig 2011-04-06 19:35:39.000000000 +0000
++++ src/common.c 2015-01-22 17:06:38.000000000 +0000
+@@ -1570,10 +1570,10 @@
+ #endif
+ switch(dbst->type) {
+ case DB_BTREE:
+- RBASIC(obj)->klass = bdb_cBtree;
++ RBASIC_SET_CLASS_RAW(obj, bdb_cBtree);
+ break;
+ case DB_HASH:
+- RBASIC(obj)->klass = bdb_cHash;
++ RBASIC_SET_CLASS_RAW(obj, bdb_cHash);
+ break;
+ case DB_RECNO:
+ {
+@@ -1581,17 +1581,17 @@
+
+ rb_warning("It's hard to distinguish Recnum with Recno for all versions of Berkeley DB");
+ if ((count = bdb_is_recnum(dbst->dbp)) != -1) {
+- RBASIC(obj)->klass = bdb_cRecnum;
++ RBASIC_SET_CLASS_RAW(obj, bdb_cRecnum);
+ dbst->len = count;
+ }
+ else {
+- RBASIC(obj)->klass = bdb_cRecno;
++ RBASIC_SET_CLASS_RAW(obj, bdb_cRecno);
+ }
+ break;
+ }
+ #if HAVE_CONST_DB_QUEUE
+ case DB_QUEUE:
+- RBASIC(obj)->klass = bdb_cQueue;
++ RBASIC_SET_CLASS_RAW(obj, bdb_cQueue);
+ break;
+ #endif
+ default:
+@@ -1635,29 +1635,29 @@
+ dbst->options = BDB_NOT_OPEN;
+ cl = obj;
+ while (cl) {
+- if (cl == bdb_cBtree || RCLASS(cl)->m_tbl == RCLASS(bdb_cBtree)->m_tbl) {
++ if (cl == bdb_cBtree || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cBtree)) {
+ dbst->type = DB_BTREE;
+ break;
+ }
+- if (cl == bdb_cRecnum || RCLASS(cl)->m_tbl == RCLASS(bdb_cRecnum)->m_tbl) {
++ if (cl == bdb_cRecnum || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cRecnum)) {
+ dbst->type = DB_RECNO;
+ break;
+ }
+- else if (cl == bdb_cHash || RCLASS(cl)->m_tbl == RCLASS(bdb_cHash)->m_tbl) {
++ else if (cl == bdb_cHash || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cHash)) {
+ dbst->type = DB_HASH;
+ break;
+ }
+- else if (cl == bdb_cRecno || RCLASS(cl)->m_tbl == RCLASS(bdb_cRecno)->m_tbl) {
++ else if (cl == bdb_cRecno || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cRecno)) {
+ dbst->type = DB_RECNO;
+ break;
+ }
+ #if HAVE_CONST_DB_QUEUE
+- else if (cl == bdb_cQueue || RCLASS(cl)->m_tbl == RCLASS(bdb_cQueue)->m_tbl) {
++ else if (cl == bdb_cQueue || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cQueue)) {
+ dbst->type = DB_QUEUE;
+ break;
+ }
+ #endif
+- else if (cl == bdb_cUnknown || RCLASS(cl)->m_tbl == RCLASS(bdb_cUnknown)->m_tbl) {
++ else if (cl == bdb_cUnknown || RCLASS_M_TBL(cl) == RCLASS_M_TBL(bdb_cUnknown)) {
+ dbst->type = DB_UNKNOWN;
+ break;
+ }