X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=bindings%2Fruby%2Ffilenames.c;h=205414021bfa3aa75ee31c405c41be42479caf9b;hb=837426d7be63cf11d51b74464f174724935c5d4f;hp=656c58e6f40dfdc87bcbc86b6dd7b2eb2680ecab;hpb=07dff496304d6dc2e8033a18691b095ed9cd212f;p=notmuch diff --git a/bindings/ruby/filenames.c b/bindings/ruby/filenames.c index 656c58e6..20541402 100644 --- a/bindings/ruby/filenames.c +++ b/bindings/ruby/filenames.c @@ -20,6 +20,16 @@ #include "defs.h" +VALUE +notmuch_rb_filenames_get (notmuch_filenames_t *fnames) +{ + VALUE rb_array = rb_ary_new (); + + for (; notmuch_filenames_valid (fnames); notmuch_filenames_move_to_next (fnames)) + rb_ary_push (rb_array, rb_str_new2 (notmuch_filenames_get (fnames))); + return rb_array; +} + /* * call-seq: FILENAMES.destroy! => nil * @@ -28,12 +38,7 @@ VALUE notmuch_rb_filenames_destroy (VALUE self) { - notmuch_filenames_t *fnames; - - Data_Get_Notmuch_FileNames (self, fnames); - - notmuch_filenames_destroy (fnames); - DATA_PTR (self) = NULL; + notmuch_rb_object_destroy (self, ¬much_rb_filenames_type); return Qnil; }