[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [689749f](https://github.com/UnigramDev/Unigram/commit/689749f4cb9548160c50aaab433948b61a3ba4ee) • _1 files, +23/-9_
Close the media source before anything that waits on libvlc

[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [17d274f](https://github.com/UnigramDev/Unigram/commit/17d274f60189f02cd5c4787f5fcc3e2081a4916c) • _1 files, +13/-6_
Detach the player events before stopping the player

[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [a2f45bc](https://github.com/UnigramDev/Unigram/commit/a2f45bc5d56a0a86e94dd4c70a8c010bc980189a) • _1 files, +12/-1_
Don't start the worker thread once the player is closed

[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [43101d2](https://github.com/UnigramDev/Unigram/commit/43101d2d82fb10969b6ce9665409a59fdf96dce4) • _1 files, +43/-26_
Detach only the libvlc listeners that actually attached

[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [f36c6c4](https://github.com/UnigramDev/Unigram/commit/f36c6c446ac8c19ddf173e43e56c87674dbc4d55) • _1 files, +9/-0_
Don't submit a null threadpool work item

[UnigramDev/Unigram/async-media-player-teardown](https://github.com/UnigramDev/Unigram/tree/async-media-player-teardown) • [32e7b2c](https://github.com/UnigramDev/Unigram/commit/32e7b2c76cfa2095e660913930e16c60ee2ed7ae) • _2 files, +66/-53_
Keep strong references to the player off libvlc's threads

[#unigram](?q=%23unigram)