[vlc-devel] [PATCH 1/9] playlist: assign unique id to playlist items
remi at remlab.net
Mon Mar 4 16:06:22 CET 2019
Le maanantaina 4. maaliskuuta 2019, 16.28.27 EET Romain Vimont a écrit :
> On Mon, Mar 04, 2019 at 04:07:40PM +0200, Rémi Denis-Courmont wrote:
> > We also had assertions before. That did not prevent horrors along the line
> > of lock/get/unlock ... lock/use/unlock.
> > In other words an assertion is not enough. We'd need a way to invalidate
> > the item after unlocking.
> The id is just a uint64_t, and it typically survives lock/unlock blocks.
> The typical scenario is to retrieve the id when we have the real item
> (e.g. to send the playlist content to the HTTP client):
> item = Get(index)
> id = GetId(item)
> // ...
The intended scenario is fine and all. That won't prevent the exact same misuse
as with the legacy playlist:
item = Get(index)
The assertion is helpless to catch that.
More information about the vlc-devel