- Data_Get_Struct(threads->query, notmuch_rb_query_t, query);
- Data_Get_Struct(query->db, notmuch_rb_database_t, db);
+ if (rb_obj_is_instance_of(threads->query, notmuch_rb_cQuery)) {
+ Data_Get_Struct(threads->query, notmuch_rb_query_t, query);
+ if (rb_obj_is_instance_of(query->db, notmuch_rb_cDatabase))
+ Data_Get_Struct(query->db, notmuch_rb_database_t, db);
+ else
+ db = NULL;
+ }
+ else
+ db = NULL;