[DRE-maint] Bug#696752: segfault in ruby-taglib2, need FTBFS fix
Stefan Bühler
lighttpd at stbuehler.de
Wed Dec 26 19:20:15 UTC 2012
Package: ruby-taglib2
Version: 0.1.3-1
Severity: important
Environment: kFreeBSD (9.0.2-amd64)
file_alloc sets
data->closed=0;
but doesn't set data->file=NULL.
This means that free_tgFileData (the ruby data destructor) can fail, if
init failed (which would set data->file in case of success).
version 0.1.5-1 fixes it by setting data->closed (in _alloc and
_init), although it still doesn't clear data->file in _alloc (not
required, but should be done anyway imho).
I triggered the segfault by running
https://github.com/stbuehler/media-player-indexer
(the update script)
on about 6000 files; not all were media files (.m3u files for
example).
The backtrace didn't contain anything useful apart from what i
described above - data->closed was 0, and data->file was an invalid C++
object (the virtual-table pointer was 0).
Other issues:
* fix the clean rules. debian/clean doesn't delete
directories, use override_dh_clean: dh_clean; rm -rf tests/tmp
instead.
* somehow the write for f.save gets delayed partially (ktrace).
calling f.save twice in tests/file.rb fixes the checks,
don't ask me why (sleep doesn't work, so not a timing issue).
More information about the Pkg-ruby-extras-maintainers
mailing list