On Thu Jan 8 13:53:31 2026 +0000, Yuxuan Shui wrote:
oh, ok. i get what you meant now. @zfigura so it goes like this:
`MediaFilter_Stop` calls `filter_Stop`, which calls `asf_reader_cleanup_stream`, which stops the WMReader (which _did_ stop), and decommits the allocator. As expected. But the problem is later in `MediaFilter_Stop`, it calls `IMediaSeeking::SetPositions`, which calls `media_seeking_ChangeCurrent` (`asfreader.c, line 329`), which stops then starts the stream again. This means when we finally get to `asf_reader_destroy`, the WMReader is running, and with a decommitted allocator. Thoughts? maybe `MediaFilter_Stop` shouldn't call `SetPositions`? Or `SetPositions` shouldn't restart the reader if it's stopped? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9858#note_126591