Skip to content

drama3: release output ownership on write failures - #14

Draft
cwschroeder wants to merge 1 commit into
validation/pr939-3515c27ffrom
fix/drama3-output-cleanup-20261016
Draft

cwschroeder wants to merge 1 commit into
validation/pr939-3515c27ffrom
fix/drama3-output-cleanup-20261016

Conversation

@cwschroeder

Copy link
Copy Markdown
Owner

Validation of a two-line cleanup patch on upstream PR ashhart#939 at 3515c27f, which contains main 46a08c18.

The new fallible WAV-header write can return from AudioOut.open while its FILE is still open. A failed out.close() after a successful speak can also leave the returned host frames without cleanup. Register error cleanup immediately after each acquisition.

CPU tests of the actual source blocks reproduce both leaks before the fix and pass all five stdio/ownership cases afterward in Debug and Fast. The three existing write/flush/valid-output controls remain green. Six warmup cases pass in both modes. The actual CLI admission prefix also passes six cases, including codec-only encode without a model; the unchanged original fails that case.

Whole-tree formatting, whitespace and lean comparison pass locally (517 versus 517, zero new). Astra reviewed both cleanup lines without a remaining issue. The full workflow runs here on isolated CI; it has not been rerun locally on this patch.

This draft is for validation and supplying the small patch to the upstream author. It adds no kernel or arithmetic changes and supplies no model, audio-quality or performance qualification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant