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). -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org