[vlc-devel] [PATCH 1/3] qt: use shared pointers in menu items
Rémi Denis-Courmont
remi at remlab.net
Thu Mar 21 13:47:23 CET 2019
I don't understand your points. Hold has to be there manually because that's just how the class work.
And I don't see what manual calls to release you are referring to. The trivial wrappers are needed for casting. This is a mismatch between C and C++, that I only hilights that C++ should be avoided in vlc.git.
Le 20 mars 2019 18:23:15 GMT+08:00, "Hugo Beauzée-Luyssen" <hugo at beauzee.fr> a écrit :
>On Mon, Mar 18, 2019, at 4:37 PM, Rémi Denis-Courmont wrote:
>> Le lundi 18 mars 2019, 15:20:14 EET Hugo Beauzée-Luyssen a écrit :
>> > Hi,
>> >
>> > I like the idea but why using QSharedPointer instead of
>vlc_shared_data_ptr
>> > or wrap_cptr?
>>
>> AFAIU, vlc_shared_data_ptr and the Qt equivalent are meant for, well,
>shared
>> data. Also AFAIU, vlc_shared_data_ptr would not work here since it
>> instantiates one type per pair of hold/release functions, and we need
>one
>> single type for all four possible pairs (none, input, aout, vout).
>>
>
>Fair point
>
>> As for wrap_cptr, it seems to me that Qt code uses Qt rather than VLC
>C++, or
>> even ISO C++, helpers, e.g. QString rather than std::string and
>QMutexLocker
>> rather than vlc_mutex_locker.
>>
>
>QString is the only type we can use if the string needs to be
>displayed, so I'm not sure if the comparison is fair/relevant.
>Regarding mutexes, as far as I can see most locking is done manually,
>and the use of QMutexLocker/vlc_mutex_locker is marginal.
>
>That being said, what mostly concerns me is that even though a smart
>pointer is used, there are still manual calls to hold/release.
>
>
>--
> Hugo Beauzée-Luyssen
> hugo at beauzee.fr
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel
--
Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190321/c224de50/attachment.html>
More information about the vlc-devel
mailing list