<html><head></head><body>The app cannot even load LibVLC if it does not agree on the CRT or does not use any CRT. The question therefore makes no sense: the app already has free() and other tied functions available from the agreed-upon CRT.<br><br>libvlc_free() is just a foot gun that makes it look like you don't need to care about the CRT, when you in fact do.<br><br><div class="gmail_quote">Le 22 mai 2019 10:59:35 GMT+03:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">On 2019-05-22 9:49, Rémi Denis-Courmont wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">As I *already* noted, and as is widely documented outside.<br><br>On most platforms, C runtime is per process. On Windows, it's per <br>thread. Either way, the consequence is that the mere fact of calling the <br>CRT from within LibVLC functions ties the CRT of LibVLC and the calling <br>code.<br></blockquote><br>I agree with that. It doesn't mean the host app has to take care of it <br>if the language doesn't know about using C code and the libvlc DLL <br>loading is done manually. libvlc_free() allowed this use.<br><br>free() is not exposed by libvlc, so how would an external app not <br>written in C know where to find that free() call ? (which hopefully is <br>not a macro to another runtime call)<br><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;">Le 22 mai 2019 10:20:06 GMT+03:00, Steve Lhomme <robux4@ycbcr.xyz> a écrit :<br><br>    On 2019-05-20 14:15, Rémi Denis-Courmont wrote:<br><br>        Hi,<br><br>        There are no changes to the fact that LibVLC "leaks" the C runtime.<br><br><br>    Where does it leak the C runtime ? I can understand the C ABI, but not<br>    the C runtime. It's possible to load the DLL just knowing the ABI and<br>    never touch the runtime or have to know about it.<br><br>    There's a difference between being tied to a C runtime and having to<br>    link to it from any other language using libvlc.<br><br>        On most systems, you cannot mix runtimes in a process at all due to<br>        namespace conflicts. On Windows, you have to stick to Win32 API<br>        calls on<br>        threads created by another runtime - something LibVLC does not do.<br><br>        Le 20 mai 2019 15:08:39 GMT+03:00, Steve Lhomme<br>        <robux4@ycbcr.xyz> a écrit :<br><br>        On 2019-05-20 13:24, Rémi Denis-Courmont wrote:<br><br>        Hi,<br><br>        No changes there.<br><br><br>        I can see a patch makind changes in the code. You'll have to be more<br>        specific.<br><br>        This is consistent with the existing doc and the reality.<br><br><br>        You removed the documentation that specifically explained one<br>        case where<br>        using libvlc_free() was actually necessary.<br><br>        This comes from vlc.git.<br>        -- <br>        Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez<br>        excuser<br>        ma brièveté.<hr>        vlc-devel mailing list<br>        To unsubscribe or modify your subscription options:<br>        <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><hr>        vlc-devel mailing list<br>        To unsubscribe or modify your subscription options:<br>        <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br><br><br>        -- <br>        Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez<br>        excuser<br>        ma brièveté.<hr>        vlc-devel mailing list<br>        To unsubscribe or modify your subscription options:<br>        <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><hr>    vlc-devel mailing list<br>    To unsubscribe or modify your subscription options:<br>    <a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br><br><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser <br>ma brièveté.<hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a><br><br></blockquote><hr>vlc-devel mailing list<br>To unsubscribe or modify your subscription options:<br><a href="https://mailman.videolan.org/listinfo/vlc-devel">https://mailman.videolan.org/listinfo/vlc-devel</a></pre></blockquote></div><br>-- <br>Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.</body></html>