ruby: cleanup object_destroy()

It was assumed the destructor of notmuch_rb_database_type did return a
notmuch_status_t because that's what notmuch_database_close returns, and
that value was checked by notmuch_rb_database_close in order to decide
if to raise an exception.

It turns out notmuch_database_destroy was called instead, so nothing was
returned (void).

All the destroy functions are void, and that's what we want.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
This commit is contained in:
Felipe Contreras 2021-08-03 13:44:57 -05:00 committed by David Bremner
parent c966fa6439
commit 2474bce8b1

View file

@ -136,20 +136,17 @@ notmuch_rb_object_free (void *rb_wrapper)
talloc_free (rb_wrapper); talloc_free (rb_wrapper);
} }
static inline notmuch_status_t static inline void
notmuch_rb_object_destroy (VALUE rb_object, const rb_data_type_t *type) notmuch_rb_object_destroy (VALUE rb_object, const rb_data_type_t *type)
{ {
notmuch_rb_object_t *rb_wrapper; notmuch_rb_object_t *rb_wrapper;
notmuch_status_t ret;
Data_Get_Notmuch_Rb_Object (rb_object, type, rb_wrapper); Data_Get_Notmuch_Rb_Object (rb_object, type, rb_wrapper);
/* Call the corresponding notmuch_*_destroy function */ /* Call the corresponding notmuch_*_destroy function */
ret = ((notmuch_status_t (*)(void *)) type->data) (rb_wrapper->nm_object); ((void (*)(void *)) type->data) (rb_wrapper->nm_object);
notmuch_rb_object_free (rb_wrapper); notmuch_rb_object_free (rb_wrapper);
DATA_PTR (rb_object) = NULL; DATA_PTR (rb_object) = NULL;
return ret;
} }
/* status.c */ /* status.c */