Setting that argument to NULL will make playlist_CreateNode() behave like previously.
That way we can create only one input per pair of node (for local playlist, media library, and service discovery)
Previous behaviour was to create 2 inputs with the same i_id member, but we would store both input in a binary search tree (sorted by i_id), and that kind of tree MUST NOT have 2 items with the same key, else we will get some bad memory corruption when the wrong input is removed from the tree (the other being left in the tree while the memory referred by it was freed).
Note that this breaks ABI
releasing it. mutex locks /= 20 on a standard preparse run
* Only create absolutely necessary variables while preparsing
--> Preparse speed *= 4 (with item in disk cache of course)
* Do not rebuild playlist too much while adding a directory. Add a new flag
to NodeCreate and Add to control this behaviour
* Headers in include must contain the structures and prototypes needed
by the plugins and should be named vlc_*.
* Headers in include/vlc must contain the structures and prototypes
needed by external libvlc clients
* Moved and renamed some things in headers.
- Removed vlc_cpu.h, vlc_error.h (merged in vlc_common)
- Removed snapshot.h (merged in vlc_vout.h)
- Removed vlc_spu.h (merged in vlc_osd.h)
- Removed intf_eject.h and vlc_interaction.h (merged in vlc_interface)
- Moved all internal headers to src
- Merged vlc_video.h and video_output.h and move private things to src
- Removed vlc/intf.h, vlc/aout.h, vlc/vout.h, vlc/decoder.h and vlc/input.h
(meta headers for use in modules, and often implying too large
dependencies)
* Removed some useless dependencies
* Unexported a bunch of functions and structures used only in src/
(--> Still some work here)
* Finally made input_thread_t and input_source_t (mostly) private.
Added input_GetItem to fetch the input_item of an input_thread
* Cleaned up deprecated entries in vlc_symbols.h and bumped up symbol
prefix
This commit has a 99% probability of breaking the build, 0.1% of killing
your cat and 0% of getting you hot chicks.
- Remove a bunch of transition now-useless API.
- Remove all playlist_Lock* functions. Matching functions now accept a
b_locked parameter that should be set to VLC_TRUE if the playlist is
locked when calling the function. The advantages are that it reduces
the API bloat and that the b_locked flag can be propagated in the
call stack
- Remove useless playlist testsuite
- Remove broken daap plugin (unmaintained wrt VLC API changes, relies on
an unmaintained library, probably unable to read content from new itunes,
...). Implementations exist in rhythmbox, xmms2 and
daap-sharp, we should see if a proper lib exists or if we could
make one
- Reduce verbosity a bit
- Documentation
modules/misc/playlist/*, modules/access/http.c: XSPF playlist support
(read and write) by Daniel Stranger. Many thanks
src/misc/modules.c, src/misc/strings.c, include/vlc_strings.h: string
handling functions.
modules/control/http/*, modules/services_discovery/upnp_intel.cpp: use
these string handling functions.