1
mirror of https://code.videolan.org/videolan/vlc synced 2024-09-04 09:11:33 +02:00
Commit Graph

67165 Commits

Author SHA1 Message Date
Pierre Ynard
0aad9c3595 lua: stop installing broken playlist scripts
These scripts are unmaintained and obviously outdated and broken. Up for
adoption, some of them seem rather easy to fix!
2016-11-02 02:31:29 +01:00
Pierre Ynard
1dc89235f2 anevia_streams.lua: partially tighten URL probe function
Ref. #17488
2016-11-02 02:19:50 +01:00
Pierre Ynard
d88cf18893 lua: tighten URL probe functions of playlist scripts
These scripts are possibly still otherwise outdated and broken.

Ref. #17488
2016-11-02 02:17:59 +01:00
Pierre Ynard
65b6c2f882 lua: update and tighten URL probe functions of playlist scripts
Update domains and URL roots, but these scripts are still otherwise
outdated and broken.

Ref. #17488
2016-11-02 02:14:29 +01:00
Pierre Ynard
a1e38a36b5 lua: fix and tighten URL probe functions of playlist scripts
Fix wrong operator precedence. These scripts are still outdated and
broken though.

Ref. #17488
2016-11-02 02:08:54 +01:00
Pierre Ynard
338b204b26 koreus.lua: tighten URL probe function
Ref. #17488
2016-11-02 01:54:34 +01:00
Pierre Ynard
d08ee1432b vocaroo.lua: tighten URL probe function
Ref. #17488
2016-11-02 01:52:25 +01:00
Tristan Matthews
86015b8882 demux: ttml: fix use after free (CID #1374347) 2016-11-01 18:34:16 -04:00
Filip Roséen
87cf24c252 demux/nsv: invalid NSVf header size leads to infinite loop (fixes #17563)
According to the specification of nsv, a file header size of 0 (and
0xFFFFFFFF) is invalid; these changes prevents an infinite loop if the
size is specified as the former, while also making sure that we do not
try to parse files containing the latter.

 - http://multimedia.cx/nsv-format.txt

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-11-01 23:23:51 +02:00
Filip Roséen
83b66b77d1 demux/avformat: fix return-value of IORead (fixes #17574)
av_read_frame expects 0 to be returned on end-of-file, and negative
values are reserved for fatal stream-errors. The previous
implementation would return -1 upon EOF (vlc_stream_Read returning 0),
causing premature EOF from modules/demux/avformat/demux.c:Demux.

These changes make sure that we honor the contract associated with the
read-callback, and that we only return -1 if there is a fatal error.

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-11-01 23:17:58 +02:00
Filip Roséen
e082cac10b demux/avi: do not call FromACP with NULL (fixes #17581)
FromACP is used to convert a c-style string from one charset to the
other, as such it does not make sense to call the function with NULL
(especially given that NULL is not a valid input for the function).

These changes fixes the checks to see whether or not the function is
applicable or not by properly checking the argument that would-be
passed (instead of just the object that contains it).

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-11-01 23:17:15 +02:00
Filip Roséen
c06adddc9a demux/asf: prevent overflow leading to crash (fixes #17580)
Given that the previous implementation assigned the return-value of
vlc_stream_Peek to a size_t, the value would wrap around on error
(since vlc_stream_Peek returns -1), rendering the "< 78" somewhat
useless (when an error occurs).

These changes change the type of i_peek to correspond to that of
vlc_stream_Peek, while also making sure that we error before calling
the function if the object size is larger than SSIZE_MAX (meaning that
we cannot peek).

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-11-01 23:17:11 +02:00
Filip Roséen
86835f9f7e demux/asf: prevent signed integer overflow (fixes #17579)
The previous implementation could overflow the mtime_t when
multiplying p_sys->p_fp->i_preroll by a thousand when converting from
the asf time unit (milliseconds) to VLCs (microseconds).

Given that you can always divide a value without running into issues
in terms of under/overflow, these changes prevent any overflow error
while still preserving the same logic.

In short the implementation takes advantage of the below two
conditions being equivalent:

   1: A > ( ( B * C ) + D )
   2: ( ( A - D ) / C ) > B

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2016-11-01 23:17:03 +02:00
Rémi Denis-Courmont
a9a94b2238 configure: remove reference to nonexistent $ac_cv_c_altivec_abi 2016-11-01 16:50:31 +02:00
Konstantin Pavlov
7c7a80bae4 snap: update package names to use on Ubuntu Zesty. 2016-11-01 17:49:21 +03:00
Rémi Denis-Courmont
677948a635 st: fix flawed logic
Refer to fed7e7951b.
2016-11-01 16:39:01 +02:00
Rémi Denis-Courmont
d076af4e46 xiph: rewrite ParseFlacPicture() w/o integer overflows (fixes #17592) 2016-11-01 16:28:57 +02:00
David Fuhrmann
d70331b13c macosx: advanced prefs: only choose slider if we have limits set
The RangedXXControls only make much sense if we have sensible
limits.
2016-11-01 15:12:06 +01:00
David Fuhrmann
8320285431 macosx: Add VLCFSPanelController.h to the dummy target as well 2016-11-01 15:12:06 +01:00
David Fuhrmann
784ab6ce69 tests/tls: Disable checks for ALPN on apple platforms
On Apple platforms, ALPN does not work as securetransport does
not provide any public API for that. So do not check for that
feature until support is added.
2016-11-01 15:12:06 +01:00
Rémi Denis-Courmont
165f0b11dd flac: fix leaks on error 2016-11-01 16:09:23 +02:00
Francois Cartegnie
d144f1746e packetizer: hevc: rename limits 2016-11-01 10:26:09 +01:00
Francois Cartegnie
f63ee9ba48 packetizer: h264: fix invalid deref (fix #17585) 2016-11-01 10:26:09 +01:00
Pierre Ynard
34142f6b31 lua: don't return pointless, wrong URL meta data
Don't return "url = vlc.path", first that's not a valid URL, then the
runtime already sets it automatically to the input URL by default.
2016-10-31 23:52:42 +01:00
Pierre Ynard
7a0f854f02 lua: update interface script examples in README.txt 2016-10-31 21:59:08 +01:00
Pierre Ynard
29c1d1cf74 lua: update playlist script examples in README.txt
Name well-maintained, varied and relevant scripts.
2016-10-31 21:48:12 +01:00
Tristan Matthews
986e967503 contrib: bpg: update to 0.9.7 2016-10-31 16:42:06 -04:00
Francois Cartegnie
311064b34c demux: mp4: fix read overflow 2016-10-31 21:38:44 +01:00
Pierre Ynard
66229ae720 youtube_homepage.lua: remove broken script
This must have long been broken, also if anything this should really be
a service discovery script instead.

Ref. #17488
2016-10-31 21:30:01 +01:00
Francois Cartegnie
d3e233c59f demux: mp4: esds heap buffer ofw (fix #17856) 2016-10-31 21:20:26 +01:00
Marvin Scholz
dafab63ab2 appletrailers.lua: Fix script for website changes
Fix the Script to work again with the changed
Apple trailers website.

Signed-off-by: Pierre Ynard <linkfanel@yahoo.fr>
2016-10-31 20:51:59 +01:00
Francois Cartegnie
7416c61d01 demux: mp4: chunk matching does not need frag flag 2016-10-31 19:21:23 +01:00
Francois Cartegnie
1583a49459 demux: mp4: rewrite main non fragmented Demux logic
Makes main demux aware of interleaving, and avoid
access layer seeks. Also improves the large interleaves
and non interleaved playback.

Fixes the pcr jumps, as a min() dts based logic isn't
suitable for edit lists.

Improves empty edits handling by keeping demuxing on
empty samples time.
2016-10-31 19:21:21 +01:00
Francois Cartegnie
66c4cbb087 demux: mp4: add chunk virtual trun
Adds continuity sequence counter,
like fragmented mp4 truns
2016-10-31 19:20:52 +01:00
Francois Cartegnie
daca57aecc demux: mp4: fix and improve interleaving detection
On compressed content, all chunks are separate
2016-10-31 19:20:47 +01:00
Francois Cartegnie
7b52601d12 demux: mp4: set discontinuity on edit list change
fixes timestamp conversion errors using avcodec
refs samples/mov/editlist/menace00.mov
2016-10-31 19:17:09 +01:00
Rémi Denis-Courmont
3bf8a8ec60 stream: assert that read size is well defined
The result of a read operation is a signed size_t, and cannot be
negative (except on error). Thus reading more than SSIZE_MAX bytes at
once is not well defined.

(Note: POSIX marks it as implementation-defined, and we cannot rely on
 much given the different implementations.)

In practice, this is not really a limitation for regular reads as
allocating a contiguous output buffer of more than SSIZE_MAX bytes is
essentially impossible. It can however be a problem when skipping data
(buffer pointer is NULL), especially on 32-bits platforms.

To skip such large amount of data, seeking is recommended instead,
e.g.:

    vlc_stream_Seek(s, vlc_stream_Tell() + skip);

instead of:

    vlc_stream_Read(s, NULL, skip);
2016-10-31 10:02:44 +02:00
Marvin Scholz
4e69953a93 macosx: Correct spelling mistakes in fscontroller 2016-10-30 23:30:12 +01:00
Marvin Scholz
6a5ae97de6 macosx: Remove fscontroller assets
Remove the old fullscreen controller assets and
their references from the Makefile and Xcode
project.
2016-10-30 22:45:13 +01:00
Marvin Scholz
3da0d0c218 macosx: Remove old fscontroller source code
Removes the old VLCFSPanel, and references to the
source files from the makefiles, potfiles and
the Xcode project.
2016-10-30 22:45:13 +01:00
Marvin Scholz
4abb898dab macosx: Make fscontroller compatible with <10.10
This will add a fallback mechanism that uses a
normal layer-backed NSView with a dark but still
slightly transparent background on macOS versions
that do not support NSVisualEffectView.

Additionally it will allow compilation with older
SDK's that have no NSVisualEffectView defined.
If compiled with such an SDK, support for
NSVisualEffectView is disabled completely, so
even when running the compiled VLC version
on 10.10 or higher it will use the old fallback
view, as the SDK it was compiled with had not the
necessary definitions.
2016-10-30 22:45:13 +01:00
Marvin Scholz
43b089ca74 macosx: Add a new fullscreen controller
This introduces a new fullscreen controller
which uses NSVisualEffectView for it's background
and the icons that are used throughout the rest of
the macOS user interface, hence making it more
consistent with the overall look of VLC.

Additionally the new fullscreen controller is
resizable and, as it already used to be, can be
move around on the screen.

The user interface is now described in a interface
builder file (xib) instead of doing everything in
code. This allows easy usage of autolayout, which
is heavily used to allow adaption of the
buttons/sliders depending on the panel width and
height.
2016-10-30 22:44:29 +01:00
Marvin Scholz
feab01c687 contrib: Fix wrong deployment target on macOS
This adds MACOSX_DEPLOYMENT_TARGET (which will be set to the value of
the MIN_OSX_VERSION variable) so contribs that only use xcodebuild
(like BGHUDKit) will use the correct deployment target.
2016-10-30 22:23:34 +01:00
Marvin Scholz
da64923aa8 contrib: Remove special case for Xcode 3
Xcode 3 is ancient and Xcode 4 is available for OS X 10.7 (the oldest
OS X version that VLC supports) so this special case can be removed.
2016-10-30 22:23:34 +01:00
Rémi Denis-Courmont
1a6dada36a linux: implement vlc_getaddrinfo_i11e() 2016-10-30 22:51:57 +02:00
Rémi Denis-Courmont
02789c40d6 posix: implement vlc_getaddrinfo_i11e() 2016-10-30 22:36:37 +02:00
Rémi Denis-Courmont
10e0eec473 net: add vlc_getaddrinfo_i11e() stub
The function should provide interrupt DNS resolution, so a thread can
abort a DNS query (e.g. if network is down or really slow).

The stub is not interruptible. This makes no difference to the existing
uninterruptible (mis)behaviour.
2016-10-30 22:34:46 +02:00
Francois Cartegnie
dd8756a52c demux: mp4: store chunk duration instead of last dts 2016-10-30 14:06:05 +01:00
Francois Cartegnie
de94ab5f3d codec: cc: fix replaytv field ordering
guess from samples
2016-10-30 14:06:05 +01:00
Francois Cartegnie
23d9a7c4b5 codec: cc: fix replay tv multiple packets per private data
according to samples, there always can be more than 8 bytes
2016-10-30 14:06:05 +01:00