aboutsummaryrefslogtreecommitdiffhomepage
path: root/bindings
diff options
context:
space:
mode:
authorGravatar Austin Clements <amdragon@MIT.EDU>2012-04-30 12:25:37 -0400
committerGravatar David Bremner <bremner@debian.org>2012-05-05 10:14:47 -0300
commit9721343e5b75e0e5a305ef32358fd83dcde650b4 (patch)
tree3aa379d51e9ddf752a2bdd7ecdaf679cae04c7d4 /bindings
parent0a357fe4105b3ea936b41584cb40312e84a1e67a (diff)
ruby: Update Ruby bindings for new notmuch_database_{open, create} signatures
Diffstat (limited to 'bindings')
-rw-r--r--bindings/ruby/database.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/bindings/ruby/database.c b/bindings/ruby/database.c
index ba9a1391..409d54fa 100644
--- a/bindings/ruby/database.c
+++ b/bindings/ruby/database.c
@@ -42,6 +42,8 @@ notmuch_rb_database_initialize (int argc, VALUE *argv, VALUE self)
int create, mode;
VALUE pathv, hashv;
VALUE modev;
+ notmuch_database_t *database;
+ notmuch_status_t ret;
/* Check arguments */
rb_scan_args (argc, argv, "11", &pathv, &hashv);
@@ -73,9 +75,13 @@ notmuch_rb_database_initialize (int argc, VALUE *argv, VALUE self)
}
Check_Type (self, T_DATA);
- DATA_PTR (self) = create ? notmuch_database_create (path) : notmuch_database_open (path, mode);
- if (!DATA_PTR (self))
- rb_raise (notmuch_rb_eDatabaseError, "Failed to open database");
+ if (create)
+ ret = notmuch_database_create (path, &database);
+ else
+ ret = notmuch_database_open (path, mode, &database);
+ notmuch_rb_status_raise (ret);
+
+ DATA_PTR (self) = database;
return self;
}