| Summary: | Устройство сидирома удерживается в открытом состоянии | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Sisyphus | Reporter: | Michael A. Kangin <prividen> | ||||
| Component: | soundkonverter | Assignee: | rom_as <rom_as> | ||||
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||
| Severity: | normal | ||||||
| Priority: | P3 | ||||||
| Version: | unstable | ||||||
| Hardware: | all | ||||||
| OS: | Linux | ||||||
| Attachments: |
|
||||||
Created attachment 3526 [details]
Закрытие устройства сидирома после прочтения списка треков с него.
Я человек, сиплюсплюсу неученый, что такое конструктор деструктора и его гарбадж коллектор, не разумею, и должна ли такая конструкция в paranoia.cpp вызываться автоматически, и почему не вызывается, не знаю:
Paranoia::~Paranoia()
{
if ( p!=0 ) paranoia_free( p );
if (d!=0 ) cdda_close( d );
}
Мне помог простенький прилагаемый патчик. Насколько он корректный, не знаю.
Спасибо, вроде бы приложил к 0.3.9-alt5 (и автору заслал). great! :) |
Программа по каким-то причинам не закрывает дивайс сидирома после диалога добавления в задание аудиотреков. Что обламывает как повторное открытие этого самого диалога ("диск не найден"), так и запуск cdparanoia на грабление, с диагнозом, что та не может открыть это устройство эксклюзивно. fuser показывает удержание устройства pid'ом soundkonverter'a. Есть воркэраунд: 1. стартуем soundkonverter, добавляем в задание аудиотреки. 2. закрываем soundkonverter и запускаем его заново - при этом задание сохраняется, но открытия устройство не происходит. 3. Можно грабить.