Package: release.debian.org Severity: normal User: release.debian.org@packages.debian.org Usertags: unblock Please unblock package vlc, version 2.2.5.1-1~deb9u1. It includes the latest upstream stable release. From vlc's NEWS: Changes between 2.2.5 and 2.2.5.1: -------------------------------- Security hardening for DLL hijacking environments Translations updates Misc: * Update for Soundcloud, liveleak and Youtube scripts * Fix potential out-of-band dereference in flac decoder * Fix potential out-of-band reads in mpeg packetizers * Fix infinite loop in subtitles demuxer * Fix incorrect memory free in ogg demuxer * Fix potential out-of-band reads in subtitle decoders and demuxers * Fix green line on Windows with odd sizes The fixes for out-of-band reads, infinite loops and incorrect memory access are the interesting fixes for us. Regarding the upstream diff, the interesting bits of the diff are: configure.ac | 18 +- lib/video.c | 13 +- modules/codec/flac.c | 7 +- modules/codec/lpcm.c | 18 +- modules/codec/subsdec.c | 9 +- modules/demux/ogg.c | 8 +- modules/demux/subtitle.c | 12 +- modules/packetizer/mpeg4audio.c | 11 +- modules/packetizer/mpegvideo.c | 4 +- src/revision.c | 2 +- src/revision.txt | 2 +- src/input/decoder.c | 7 +- share/lua/playlist/liveleak.lua | 30 +- share/lua/playlist/soundcloud.lua | 4 +- share/lua/playlist/youtube.lua | 13 +- The diff is attached as vlc.diff. The following bits have been filtered from the diff. Makefile.in | 15 +- NEWS | 17 + bin/Makefile.am | 4 +- bin/Makefile.in | 4 +- bin/vlc_win32_rc.rc.in | 4 +- bin/winvlc.c | 97 +- config.h.in | 4 + configure | 43 +- contrib/src/dvbpsi/SHA512SUMS | 2 +- contrib/src/dvbpsi/rules.mak | 2 +- contrib/src/x264/rules.mak | 3 +- extras/package/win32/NSIS/vlc.win32.nsi.in | 5 - extras/package/win32/libvlc.dll.manifest | 20 +- extras/package/win32/package.mak | 15 +- extras/package/win32/vlc.exe.manifest | 44 +- modules/gui/macosx/intf.m | 22 +- modules/gui/macosx/misc.m | 4 +- modules/video_output/msw/common.c | 4 +- modules/video_output/msw/direct3d.c | 52 +- src/Makefile.am | 2 +- src/Makefile.in | 2 +- src/libvlc_win32_rc.rc.in | 4 +- src/win32/plugin.c | 5 +- src/win32/specific.c | 41 +- src/win32/thread.c | 27 +- autotools stuff, Windows and mac OS specific parts. po/POTFILES.in | 40 +- po/ach.gmo | Bin 56044 -> 48865 bytes po/ach.po | 1278 ++-- po/af.gmo | Bin 121865 -> 121231 bytes po/af.po | 1320 +--- po/am.gmo | Bin 72522 -> 62860 bytes po/am.po | 1288 ++-- po/an.gmo | Bin 461722 -> 457882 bytes po/an.po | 3088 ++++----- po/ar.gmo | Bin 352264 -> 351369 bytes po/ar.po | 1984 ++---- po/ast.gmo | Bin 466160 -> 456295 bytes po/ast.po | 1285 ++-- po/az.gmo | Bin 6611 -> 6611 bytes po/az.po | 1128 +-- po/be.gmo | Bin 748950 -> 734394 bytes po/be.po | 1359 ++-- po/bg.gmo | Bin 630304 -> 619654 bytes po/bg.po | 1320 ++-- po/bn.gmo | Bin 666022 -> 653103 bytes po/bn.po | 1258 +--- po/bn_IN.gmo | Bin 795722 -> 783516 bytes po/bn_IN.po | 1396 ++-- po/br.gmo | Bin 79760 -> 98134 bytes po/br.po | 2300 +++--- po/bs.gmo | Bin 173444 -> 167704 bytes po/bs.po | 1223 +--- po/ca.gmo | Bin 632682 -> 619885 bytes po/ca.po | 1366 ++-- po/cgg.gmo | Bin 41777 -> 41251 bytes po/cgg.po | 1248 +--- po/ckb.gmo | Bin 86340 -> 82726 bytes po/ckb.po | 1271 ++-- po/co.gmo | Bin 104453 -> 125479 bytes po/co.po | 2273 +++--- po/cs.gmo | Bin 252455 -> 257984 bytes po/cs.po | 1630 ++--- po/cy.gmo | Bin 297097 -> 288358 bytes po/cy.po | 1344 ++-- po/da.gmo | Bin 609236 -> 597479 bytes po/da.po | 1372 ++-- po/de.gmo | Bin 630460 -> 618226 bytes po/de.po | 1366 ++-- po/el.gmo | Bin 876015 -> 859564 bytes po/el.po | 1369 ++-- po/en_GB.gmo | Bin 55380 -> 58248 bytes po/en_GB.po | 1194 +--- po/es.gmo | Bin 631711 -> 619326 bytes po/es.po | 1403 ++-- po/es_MX.gmo | Bin 621545 -> 611431 bytes po/es_MX.po | 1442 ++-- po/et.gmo | Bin 464053 -> 452650 bytes po/et.po | 1373 ++-- po/eu.gmo | Bin 637675 -> 625114 bytes po/eu.po | 1397 ++-- po/fa.gmo | Bin 170437 -> 173669 bytes po/fa.po | 1456 +--- po/ff.gmo | Bin 83266 -> 75873 bytes po/ff.po | 1280 ++-- po/fi.gmo | Bin 575611 -> 565778 bytes po/fi.po | 1447 ++-- po/fr.gmo | Bin 632243 -> 619700 bytes po/fr.po | 1374 ++-- po/fur.gmo | Bin 38660 -> 38472 bytes po/fur.po | 1277 ++-- po/ga.gmo | Bin 143386 -> 153447 bytes po/ga.po | 1994 ++---- po/gd.gmo | Bin 190543 -> 179376 bytes po/gd.po | 1300 ++-- po/gl.gmo | Bin 622560 -> 610278 bytes po/gl.po | 1385 ++-- po/gu.gmo | Bin 924359 -> 906669 bytes po/gu.po | 1357 ++-- po/he.gmo | Bin 234710 -> 246977 bytes po/he.po | 2295 +++--- po/hi.gmo | Bin 148031 -> 134432 bytes po/hi.po | 1268 ++-- po/hr.gmo | Bin 556631 -> 545051 bytes po/hr.po | 1352 ++-- po/hu.gmo | Bin 642207 -> 629556 bytes po/hu.po | 1363 ++-- po/hy.gmo | Bin 135847 -> 126202 bytes po/hy.po | 1322 ++-- po/ia.gmo | Bin 11156 -> 10874 bytes po/ia.po | 1170 +--- po/id.gmo | Bin 426945 -> 417546 bytes po/id.po | 1279 ++-- po/is.gmo | Bin 194551 -> 198862 bytes po/is.po | 1839 ++--- po/it.gmo | Bin 631171 -> 620459 bytes po/it.po | 1491 ++-- po/ja.gmo | Bin 701303 -> 687774 bytes po/ja.po | 1339 ++-- po/ka.gmo | Bin 58548 -> 58246 bytes po/ka.po | 1269 ++-- po/kk.gmo | Bin 253732 -> 246400 bytes po/kk.po | 1220 +--- po/km.gmo | Bin 1011849 -> 993069 bytes po/km.po | 1353 ++-- po/kn.gmo | Bin 827850 -> 810001 bytes po/kn.po | 1391 ++-- po/ko.gmo | Bin 637461 -> 625161 bytes po/ko.po | 1347 ++-- po/ks_IN.gmo | Bin 796960 -> 781922 bytes po/ks_IN.po | 1377 ++-- po/ky.gmo | Bin 38646 -> 35519 bytes po/ky.po | 1222 +--- po/lg.gmo | Bin 55141 -> 50948 bytes po/lg.po | 1292 ++-- po/lt.gmo | Bin 346587 -> 335822 bytes po/lt.po | 1300 ++-- po/lv.gmo | Bin 633894 -> 621573 bytes po/lv.po | 1342 ++-- po/mai.gmo | Bin 941125 -> 923602 bytes po/mai.po | 1371 ++-- po/mk.gmo | Bin 10685 -> 10464 bytes po/mk.po | 1158 +--- po/ml.gmo | Bin 1161723 -> 1140002 bytes po/ml.po | 1392 ++-- po/mn.gmo | Bin 80904 -> 75877 bytes po/mn.po | 1259 +--- po/mr.gmo | Bin 1028378 -> 1008699 bytes po/mr.po | 1379 ++-- po/ms.gmo | Bin 598045 -> 586446 bytes po/ms.po | 1392 ++-- po/my.gmo | Bin 14938 -> 14788 bytes po/my.po | 1190 +--- po/nb.gmo | Bin 177889 -> 404709 bytes po/nb.po | 10010 ++++++++++++++------------- po/ne.gmo | Bin 364649 -> 362909 bytes po/ne.po | 1895 ++--- po/nl.gmo | Bin 614977 -> 602995 bytes po/nl.po | 1352 ++-- po/nn.gmo | Bin 117993 -> 199706 bytes po/nn.po | 7234 +++++++++---------- po/oc.gmo | Bin 627912 -> 615438 bytes po/oc.po | 1364 ++-- po/or.gmo | Bin 25414 -> 23873 bytes po/or.po | 1193 +--- po/pa.gmo | Bin 287789 -> 280232 bytes po/pa.po | 1522 ++-- po/pl.gmo | Bin 627299 -> 615044 bytes po/pl.po | 1376 ++-- po/ps.gmo | Bin 42859 -> 40727 bytes po/ps.po | 1252 +--- po/pt_BR.gmo | Bin 632235 -> 619771 bytes po/pt_BR.po | 1350 ++-- po/pt_PT.gmo | Bin 629218 -> 616876 bytes po/pt_PT.po | 1592 ++--- po/ro.gmo | Bin 421574 -> 410568 bytes po/ro.po | 1333 ++-- po/ru.gmo | Bin 798036 -> 782803 bytes po/ru.po | 1351 ++-- po/si.gmo | Bin 281537 -> 270098 bytes po/si.po | 1397 ++-- po/sk.gmo | Bin 651431 -> 638832 bytes po/sk.po | 1369 ++-- po/sl.gmo | Bin 601328 -> 600196 bytes po/sl.po | 5087 +++++++------- po/sq.gmo | Bin 68478 -> 67130 bytes po/sq.po | 1216 +--- po/sr.gmo | Bin 359056 -> 350717 bytes po/sr.po | 1280 ++-- po/sv.gmo | Bin 481243 -> 472577 bytes po/sv.po | 1482 ++-- po/ta.gmo | Bin 153159 -> 150278 bytes po/ta.po | 1198 +--- po/te.gmo | Bin 147576 -> 136663 bytes po/te.po | 1276 ++-- po/tet.gmo | Bin 484 -> 484 bytes po/tet.po | 1238 +--- po/th.gmo | Bin 357399 -> 343603 bytes po/th.po | 1293 ++-- po/tl.gmo | Bin 461 -> 461 bytes po/tl.po | 1238 +--- po/tr.gmo | Bin 637497 -> 624982 bytes po/tr.po | 1671 ++--- po/uk.gmo | Bin 807692 -> 792150 bytes po/uk.po | 1374 ++-- po/uz.gmo | Bin 58367 -> 53567 bytes po/uz.po | 1209 +--- po/vi.gmo | Bin 555978 -> 543056 bytes po/vi.po | 1339 ++-- po/vlc.pot | 1106 +-- po/wa.gmo | Bin 286261 -> 277400 bytes po/wa.po | 1307 ++-- po/zh_CN.gmo | Bin 570529 -> 559349 bytes po/zh_CN.po | 1357 ++-- po/zh_TW.gmo | Bin 280132 -> 270220 bytes po/zh_TW.po | 1380 ++-- po/zu.gmo | Bin 61307 -> 53184 bytes po/zu.po | 1290 ++-- Translation updates. In addition to the maintscript version bumps (cf #859459), I've also included bumps in Breaks+Replaces in vlc-l10n, vlc-plugin-skins2 and vlc-bin, since they contain files that moved relative to the version in jessie (cf #862474). The changelog contains a fix in one of the changelog messages (as noted in #859459) and I forgot to mention the update of the copyright years in d/changelog. The diff for debian/ is: --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +vlc (2.2.5.1-1~deb9u1) unstable; urgency=medium + + * New upstream release. + * debian/patches/fix-translation.patch: Refreshed. + * debian/*.maintscript: Bump all versions to 2.2.5.1-1~z. This is necessary + to properly handle symlink to directory conversions once 2.2.5.1 is + available in jessie. + * debian/control: Bump Breaks + Replaces to 2.2.5.1-1~deb9u1 where necessary + to ensure proper upgrades from jessie. (Closes: #862474) + + -- Sebastian Ramacher <sramacher@debian.org> Sat, 13 May 2017 15:24:45 +0200 + vlc (2.2.5-1) unstable; urgency=medium * New upstream releases. (Closes: #850529) @@ -6,7 +18,7 @@ vlc (2.2.5-1) unstable; urgency=medium - Removed patches taken from upstream included in 2.2.5. * debian/*.maintscript: Bump all versions to 2.2.5-1~z. This is necessary to properly handle symlink to directory conversions once 2.2.5 is available - in stretch. + in jessie. -- Sebastian Ramacher <sramacher@debian.org> Sun, 19 Mar 2017 21:50:23 +0100 --- a/debian/control +++ b/debian/control @@ -256,8 +256,8 @@ Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, libvlc-bin (= ${binary:Version}) -Breaks: vlc-nox (<< 2.2.4-7~) -Replaces: vlc-nox (<< 2.2.4-7~) +Breaks: vlc-nox (<< 2.2.5.1-1~deb9u1) +Replaces: vlc-nox (<< 2.2.5.1-1~deb9u1) Description: binaries from VLC VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, @@ -282,8 +282,8 @@ Section: localization Architecture: all Multi-Arch: foreign Depends: ${misc:Depends} -Breaks: vlc-data (<< 2.2.4-7~) -Replaces: vlc-data (<< 2.2.4-7~) +Breaks: vlc-data (<< 2.2.5.1-1~deb9u1) +Replaces: vlc-data (<< 2.2.5.1-1~deb9u1) Description: Translations for VLC VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, @@ -370,8 +370,8 @@ Depends: ${misc:Depends}, vlc-plugin-qt (= ${binary:Version}) Recommends: vlc-bin Enhances: vlc -Breaks: vlc (<< 2.2.4-10~), vlc-data (<< 2.2.4-7~) -Replaces: vlc (<< 2.2.4-10~), vlc-data (<< 2.2.4-7~) +Breaks: vlc (<< 2.2.4-10~), vlc-data (<< 2.2.5.1-1~deb9u1) +Replaces: vlc (<< 2.2.4-10~), vlc-data (<< 2.2.5.1-1~deb9u1) Description: multimedia player and streamer (Skins2 plugin) VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, diff --git a/debian/copyright b/debian/copyright index 1cd6ff0a5e..9195be86d5 100644 --- a/debian/copyright +++ b/debian/copyright @@ -13,7 +13,7 @@ With the exception of other files mentioned in this document, all code and artwork belongs to members of the VideoLAN team <videolan@videolan.org>. See each file for precise details about its respective authors. -Copyright (c) 1996-2016 the VideoLAN Team +Copyright (c) 1996-2017 the VideoLAN Team Rémi Denis-Courmont Jean-Baptiste Kempf Laurent Aimar diff --git a/debian/gbp.conf b/debian/gbp.conf index f4cc89c3c9..35bef03c00 100644 --- a/debian/gbp.conf +++ b/debian/gbp.conf @@ -1,5 +1,5 @@ [DEFAULT] -debian-branch = master +debian-branch = stretch pristine-tar = True compression = xz diff --git a/debian/libvlc-dev.maintscript b/debian/libvlc-dev.maintscript index 5aceb56641..8a87633ada 100644 --- a/debian/libvlc-dev.maintscript +++ b/debian/libvlc-dev.maintscript @@ -1,2 +1,2 @@ -symlink_to_dir /usr/share/doc/libvlc-dev libvlc5 2.2.5-1~z -symlink_to_dir /usr/share/bug/libvlc-dev libvlc5 2.2.5-1~z +symlink_to_dir /usr/share/doc/libvlc-dev libvlc5 2.2.5.1-1~z +symlink_to_dir /usr/share/bug/libvlc-dev libvlc5 2.2.5.1-1~z diff --git a/debian/libvlc5.maintscript b/debian/libvlc5.maintscript index f3a8313dbe..16a91f49c7 100644 --- a/debian/libvlc5.maintscript +++ b/debian/libvlc5.maintscript @@ -1,2 +1,2 @@ -symlink_to_dir /usr/share/doc/libvlc5 libvlccore8 2.2.5-1~z -symlink_to_dir /usr/share/bug/libvlc5 libvlccore8 2.2.5-1~z +symlink_to_dir /usr/share/doc/libvlc5 libvlccore8 2.2.5.1-1~z +symlink_to_dir /usr/share/bug/libvlc5 libvlccore8 2.2.5.1-1~z diff --git a/debian/libvlccore-dev.maintscript b/debian/libvlccore-dev.maintscript index 2f1c5a6f8f..94eba47ead 100644 --- a/debian/libvlccore-dev.maintscript +++ b/debian/libvlccore-dev.maintscript @@ -1,2 +1,2 @@ -symlink_to_dir /usr/share/doc/libvlccore-dev libvlccore8 2.2.5-1~z -symlink_to_dir /usr/share/bug/libvlccore-dev libvlccore8 2.2.5-1~z +symlink_to_dir /usr/share/doc/libvlccore-dev libvlccore8 2.2.5.1-1~z +symlink_to_dir /usr/share/bug/libvlccore-dev libvlccore8 2.2.5.1-1~z diff --git a/debian/libvlccore8.maintscript b/debian/libvlccore8.maintscript index c8e0e00e7e..2e304b4934 100644 --- a/debian/libvlccore8.maintscript +++ b/debian/libvlccore8.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/doc/libvlccore8 vlc-data 2.2.5-1~z +symlink_to_dir /usr/share/doc/libvlccore8 vlc-data 2.2.5.1-1~z diff --git a/debian/patches/fix-translation.patch b/debian/patches/fix-translation.patch index 33462cef84..849b3dd7a9 100644 --- a/debian/patches/fix-translation.patch +++ b/debian/patches/fix-translation.patch @@ -4,7 +4,7 @@ Bug-Debian: https://bugs.debian.org/814258 --- a/po/mr.po +++ b/po/mr.po -@@ -21567,7 +21567,7 @@ +@@ -21466,7 +21466,7 @@ #: modules/gui/qt4/menus.cpp:493 msgid "Ctrl+L" @@ -13,7 +13,7 @@ Bug-Debian: https://bugs.debian.org/814258 #: modules/gui/qt4/menus.cpp:496 msgid "Docked Playlist" -@@ -21579,7 +21579,7 @@ +@@ -21478,7 +21478,7 @@ #: modules/gui/qt4/menus.cpp:508 msgid "Ctrl+H" @@ -22,7 +22,7 @@ Bug-Debian: https://bugs.debian.org/814258 #: modules/gui/qt4/menus.cpp:517 msgid "&Fullscreen Interface" -@@ -21735,7 +21735,7 @@ +@@ -21634,7 +21634,7 @@ #: modules/gui/qt4/menus.cpp:920 msgid "Ctrl+T" diff --git a/debian/vlc-nox.maintscript b/debian/vlc-nox.maintscript index 7e77d19ed2..9668bee50a 100644 --- a/debian/vlc-nox.maintscript +++ b/debian/vlc-nox.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-nox libvlccore8 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-nox libvlccore8 2.2.5.1-1~z diff --git a/debian/vlc-plugin-fluidsynth.maintscript b/debian/vlc-plugin-fluidsynth.maintscript index c2aa1c64f5..7f62c67eeb 100644 --- a/debian/vlc-plugin-fluidsynth.maintscript +++ b/debian/vlc-plugin-fluidsynth.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-fluidsynth vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-fluidsynth vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-jack.maintscript b/debian/vlc-plugin-jack.maintscript index 079f1da619..170c0f4eb6 100644 --- a/debian/vlc-plugin-jack.maintscript +++ b/debian/vlc-plugin-jack.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-jack vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-jack vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-notify.maintscript b/debian/vlc-plugin-notify.maintscript index 438ea009b2..b8f188d935 100644 --- a/debian/vlc-plugin-notify.maintscript +++ b/debian/vlc-plugin-notify.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-notify vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-notify vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-samba.maintscript b/debian/vlc-plugin-samba.maintscript index 8fe6b8ca5d..ec5ff5480b 100644 --- a/debian/vlc-plugin-samba.maintscript +++ b/debian/vlc-plugin-samba.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-samba vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-samba vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-sdl.maintscript b/debian/vlc-plugin-sdl.maintscript index 6b8aadb78a..b7ae6f80aa 100644 --- a/debian/vlc-plugin-sdl.maintscript +++ b/debian/vlc-plugin-sdl.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-sdl vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-sdl vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-svg.maintscript b/debian/vlc-plugin-svg.maintscript index 5405592099..febc0fb793 100644 --- a/debian/vlc-plugin-svg.maintscript +++ b/debian/vlc-plugin-svg.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-svg vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-svg vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc-plugin-zvbi.maintscript b/debian/vlc-plugin-zvbi.maintscript index 455516ea60..b5b10d8e58 100644 --- a/debian/vlc-plugin-zvbi.maintscript +++ b/debian/vlc-plugin-zvbi.maintscript @@ -1 +1 @@ -symlink_to_dir /usr/share/bug/vlc-plugin-zvbi vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/bug/vlc-plugin-zvbi vlc-nox 2.2.5.1-1~z diff --git a/debian/vlc.maintscript b/debian/vlc.maintscript index 08f8d63e53..4aedf5891a 100644 --- a/debian/vlc.maintscript +++ b/debian/vlc.maintscript @@ -1,2 +1,2 @@ -symlink_to_dir /usr/share/doc/vlc vlc-nox 2.2.5-1~z -symlink_to_dir /usr/share/bug/vlc vlc-nox 2.2.5-1~z +symlink_to_dir /usr/share/doc/vlc vlc-nox 2.2.5.1-1~z +symlink_to_dir /usr/share/bug/vlc vlc-nox 2.2.5.1-1~z unblock vlc/2.2.5.1-1~deb9u1 Cheers -- Sebastian Ramacher
diff --git a/lib/video.c b/lib/video.c index 9f6721237f..003e268d74 100644 --- a/lib/video.c +++ b/lib/video.c @@ -3,7 +3,7 @@ ***************************************************************************** * Copyright (C) 2005-2010 VLC authors and VideoLAN * - * $Id: 19065fbdc2cf240999c964f345b381dc44f95942 $ + * $Id: 0e3ccb5767938a40428393032cdbe672fcce89fe $ * * Authors: Clément Stenac <zorglub@videolan.org> * Filippo Carone <littlejohn@videolan.org> @@ -466,11 +466,14 @@ void libvlc_video_set_teletext( libvlc_media_player_t *p_mi, int i_page ) } telx = var_GetInteger( p_input_thread, "teletext-es" ); - if( input_GetEsObjects( p_input_thread, telx, &p_zvbi, NULL, NULL ) - == VLC_SUCCESS ) + if( telx >= 0 ) { - var_SetInteger( p_zvbi, "vbi-page", i_page ); - vlc_object_release( p_zvbi ); + if( input_GetEsObjects( p_input_thread, telx, &p_zvbi, NULL, NULL ) + == VLC_SUCCESS ) + { + var_SetInteger( p_zvbi, "vbi-page", i_page ); + vlc_object_release( p_zvbi ); + } } vlc_object_release( p_input_thread ); } diff --git a/modules/codec/flac.c b/modules/codec/flac.c index 1eb4dae3b1..8ab1cb4e92 100644 --- a/modules/codec/flac.c +++ b/modules/codec/flac.c @@ -2,7 +2,7 @@ * flac.c: flac decoder/encoder module making use of libflac ***************************************************************************** * Copyright (C) 1999-2001 VLC authors and VideoLAN - * $Id: 32ae7fb066e30758f269985a331056c7ea23ca95 $ + * $Id: 87c1e6cb7b84d4ba2b5eef18f9dc861b40cf6393 $ * * Authors: Gildas Bazin <gbazin@videolan.org> * Sigmund Augdal Helberg <dnumgis@videolan.org> @@ -235,9 +235,12 @@ static void DecoderMetadataCallback( const FLAC__StreamDecoder *decoder, /* Setup the format */ p_dec->fmt_out.audio.i_rate = metadata->data.stream_info.sample_rate; p_dec->fmt_out.audio.i_channels = metadata->data.stream_info.channels; - p_dec->fmt_out.audio.i_physical_channels = + if(metadata->data.stream_info.channels < 9) + { + p_dec->fmt_out.audio.i_physical_channels = p_dec->fmt_out.audio.i_original_channels = pi_channels_maps[metadata->data.stream_info.channels]; + } if (!p_dec->fmt_out.audio.i_bitspersample) p_dec->fmt_out.audio.i_bitspersample = metadata->data.stream_info.bits_per_sample; diff --git a/modules/codec/lpcm.c b/modules/codec/lpcm.c index f0a7304eb5..b78072c02c 100644 --- a/modules/codec/lpcm.c +++ b/modules/codec/lpcm.c @@ -2,7 +2,7 @@ * lpcm.c: lpcm decoder/packetizer module ***************************************************************************** * Copyright (C) 1999-2008 VLC authors and VideoLAN - * $Id: d158ad37ebc054010be1827de04b83390d9bb246 $ + * $Id: f2911e4aa8288351b6e749a797fd9ac18782131c $ * * Authors: Samuel Hocevar <sam@zoy.org> * Henri Fallon <henri@videolan.org> @@ -411,11 +411,13 @@ static block_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) /* */ if( i_bits == 16 ) { + p_dec->fmt_out.audio.i_format = p_dec->fmt_out.i_codec = VLC_CODEC_S16N; p_dec->fmt_out.audio.i_bitspersample = 16; } else { + p_dec->fmt_out.audio.i_format = p_dec->fmt_out.i_codec = VLC_CODEC_S32N; p_dec->fmt_out.audio.i_bitspersample = 32; } @@ -434,20 +436,6 @@ static block_t *DecodeFrame( decoder_t *p_dec, block_t **pp_block ) p_block->p_buffer += p_sys->i_header_size + i_padding; p_block->i_buffer -= p_sys->i_header_size + i_padding; - const unsigned block_nb_frames = p_block->i_buffer / ( i_bits * 4 / 8 ); - const unsigned aout_nb_frames = p_aout_buffer->i_nb_samples - / ( p_dec->fmt_out.audio.i_bitspersample / 8 ); - - if( block_nb_frames > aout_nb_frames ) - { - msg_Warn( p_dec, "invalid block size" ); - - block_Release( p_block ); - block_Release( p_aout_buffer ); - - return NULL; - } - switch( p_sys->i_type ) { case LPCM_WIDI: diff --git a/modules/codec/subsdec.c b/modules/codec/subsdec.c index f52b1e71c8..d5688dcfa7 100644 --- a/modules/codec/subsdec.c +++ b/modules/codec/subsdec.c @@ -2,7 +2,7 @@ * subsdec.c : text subtitle decoder ***************************************************************************** * Copyright (C) 2000-2006 VLC authors and VideoLAN - * $Id: 1b4276e299a2a6668047231d29ac705ae93076ba $ + * $Id: addd8c71f30d53558fffd19059b374be45cf0f8e $ * * Authors: Gildas Bazin <gbazin@videolan.org> * Samuel Hocevar <sam@zoy.org> @@ -664,7 +664,7 @@ static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) HtmlCopy( &psz_html, &psz_subtitle, "<font " ); HtmlPut( &psz_tag, "f" ); - while( *psz_subtitle != '>' ) + while( *psz_subtitle != '>' && *psz_subtitle) { int k; @@ -722,7 +722,7 @@ static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) i_len++; } /* Not a tag, something else we do not understand */ - if( i_len == 0 ) + if( i_len == 0 && *psz_subtitle != '\0' ) psz_subtitle++; psz_subtitle += i_len; @@ -731,6 +731,7 @@ static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) HtmlNPut( &psz_html, psz_subtitle, strspn(psz_subtitle, " ") ); } HtmlPut( &psz_html, ">" ); + if (*psz_subtitle == '\0') break; psz_subtitle++; } else if( !strncmp( psz_subtitle, "</", 2 )) @@ -912,7 +913,7 @@ static char *CreateHtmlSubtitle( int *pi_align, char *psz_subtitle ) } psz_subtitle = strchr( psz_subtitle, '}' ) + 1; } - else if( psz_subtitle[0] == '{' && psz_subtitle[2] == ':' && strchr( psz_subtitle, '}' ) ) + else if( psz_subtitle[0] == '{' && psz_subtitle[1] != '\0' && psz_subtitle[2] == ':' && strchr( psz_subtitle, '}' ) ) { // Hide other {x:y} atrocities, like {c:$bbggrr} or {P:x} psz_subtitle = strchr( psz_subtitle, '}' ) + 1; diff --git a/modules/demux/ogg.c b/modules/demux/ogg.c index 9b53134a28..d28fa32655 100644 --- a/modules/demux/ogg.c +++ b/modules/demux/ogg.c @@ -2,7 +2,7 @@ * ogg.c : ogg stream demux module for vlc ***************************************************************************** * Copyright (C) 2001-2007 VLC authors and VideoLAN - * $Id: 94d88942e090f58cc8d6619f360e8dc4781aca7f $ + * $Id: 6f37d9231ff2d980d10093ef660202a7c3f35afd $ * * Authors: Gildas Bazin <gbazin@netcourrier.com> * Andre Pang <Andre.Pang@csiro.au> (Annodex support) @@ -2199,9 +2199,11 @@ static void Ogg_CleanSpecificData( logical_stream_t *p_stream ) #ifdef HAVE_LIBVORBIS if ( p_stream->fmt.i_codec == VLC_CODEC_VORBIS ) { - vorbis_info_clear( p_stream->special.vorbis.p_info ); + if( p_stream->special.vorbis.p_info ) + vorbis_info_clear( p_stream->special.vorbis.p_info ); FREENULL( p_stream->special.vorbis.p_info ); - vorbis_comment_clear( p_stream->special.vorbis.p_comment ); + if( p_stream->special.vorbis.p_comment ) + vorbis_comment_clear( p_stream->special.vorbis.p_comment ); FREENULL( p_stream->special.vorbis.p_comment ); p_stream->special.vorbis.i_headers_flags = 0; } diff --git a/modules/demux/subtitle.c b/modules/demux/subtitle.c index 2b9594813a..1614e86008 100644 --- a/modules/demux/subtitle.c +++ b/modules/demux/subtitle.c @@ -2,7 +2,7 @@ * subtitle.c: Demux for subtitle text files. ***************************************************************************** * Copyright (C) 1999-2007 VLC authors and VideoLAN - * $Id: c2877a0b9f45bdabcfeed75edae2ac8577035fa6 $ + * $Id: 3e790fd307ff08f92fd3b754863f7a91f34fd85f $ * * Authors: Laurent Aimar <fenrir@via.ecp.fr> * Derk-Jan Hartman <hartman at videolan dot org> @@ -1271,6 +1271,7 @@ static int ParseSami( demux_t *p_demux, subtitle_t *p_subtitle, int i_idx ) i_text = 0; text[0] = '\0'; + const char *psz_startline = s; /* now get all txt until a "Start=" line */ for( ;; ) { @@ -1287,7 +1288,8 @@ static int ParseSami( demux_t *p_demux, subtitle_t *p_subtitle, int i_idx ) { c = '\n'; } - else if( strcasestr( s, "Start=" ) ) + else if( strcasestr( s, "Start=" ) && + psz_startline != s ) { TextPreviousLine( txt ); break; @@ -1807,8 +1809,8 @@ static int ParseJSS( demux_t *p_demux, subtitle_t *p_subtitle, int i_idx ) /* Parse the directives */ if( isalpha( (unsigned char)*psz_text ) || *psz_text == '[' ) { - while( *psz_text != ' ' ) - { psz_text++ ;}; + while( *psz_text && *psz_text != ' ' ) + ++psz_text; /* Directives are NOT parsed yet */ /* This has probably a better place in a decoder ? */ @@ -1865,7 +1867,7 @@ static int ParseJSS( demux_t *p_demux, subtitle_t *p_subtitle, int i_idx ) if( ( toupper((unsigned char)*(psz_text + 1 ) ) == 'C' ) || ( toupper((unsigned char)*(psz_text + 1 ) ) == 'F' ) ) { - psz_text++; psz_text++; + psz_text++; break; } if( (*(psz_text + 1 ) ) == 'B' || (*(psz_text + 1 ) ) == 'b' || diff --git a/modules/packetizer/mpeg4audio.c b/modules/packetizer/mpeg4audio.c index d296d5a19a..bff28d3a5d 100644 --- a/modules/packetizer/mpeg4audio.c +++ b/modules/packetizer/mpeg4audio.c @@ -2,7 +2,7 @@ * mpeg4audio.c: parse and packetize an MPEG 4 audio stream ***************************************************************************** * Copyright (C) 2001, 2002, 2006 VLC authors and VideoLAN - * $Id: e17cac11e4640c5c964175dbd1238cc627275356 $ + * $Id: 0767f6edd60a7b60042a288d3f95412976976e1d $ * * Authors: Laurent Aimar <fenrir@via.ecp.fr> * Gildas Bazin <gbazin@netcourrier.com> @@ -203,7 +203,7 @@ static int OpenPacketizer(vlc_object_t *p_this) msg_Dbg(p_dec, "running MPEG4 audio packetizer"); - if (p_dec->fmt_in.i_extra > 0) { + if (p_dec->fmt_in.i_extra > 1) { uint8_t *p_config = (uint8_t*)p_dec->fmt_in.p_extra; int i_index; @@ -212,17 +212,16 @@ static int OpenPacketizer(vlc_object_t *p_this) p_dec->fmt_out.audio.i_rate = pi_sample_rates[i_index]; p_dec->fmt_out.audio.i_frame_length = ((p_config[1] >> 2) & 0x01) ? 960 : 1024; - } else { + p_dec->fmt_out.audio.i_channels = (p_config[1] >> 3) & 0x0f; + } else if( p_dec->fmt_in.i_extra > 4 ) { p_dec->fmt_out.audio.i_rate = ((p_config[1] & 0x7f) << 17) | (p_config[2] << 9) | (p_config[3] << 1) | (p_config[4] >> 7); p_dec->fmt_out.audio.i_frame_length = ((p_config[4] >> 2) & 0x01) ? 960 : 1024; + p_dec->fmt_out.audio.i_channels = (p_config[4] >> 3) & 0x0f; } - p_dec->fmt_out.audio.i_channels = - (p_config[i_index == 0x0f ? 4 : 1] >> 3) & 0x0f; - msg_Dbg(p_dec, "AAC %dHz %d samples/frame", p_dec->fmt_out.audio.i_rate, p_dec->fmt_out.audio.i_frame_length); diff --git a/modules/packetizer/mpegvideo.c b/modules/packetizer/mpegvideo.c index 0ae832b2b3..c0280fd83e 100644 --- a/modules/packetizer/mpegvideo.c +++ b/modules/packetizer/mpegvideo.c @@ -2,7 +2,7 @@ * mpegvideo.c: parse and packetize an MPEG1/2 video stream ***************************************************************************** * Copyright (C) 2001-2006 VLC authors and VideoLAN - * $Id: 038366cbbe1a497835b68af574d33be9d8b689b1 $ + * $Id: 9cba57445cee3f62b4dce49ca3a8195299942b8d $ * * Authors: Laurent Aimar <fenrir@via.ecp.fr> * Eric Petit <titer@videolan.org> @@ -619,7 +619,7 @@ static block_t *ParseMPEGBlock( decoder_t *p_dec, block_t *p_frag ) #endif } - else if( i_type == 0x08 ) + else if( i_type == 0x08 && p_frag->i_buffer > 8 ) { /* picture extension */ p_sys->i_picture_structure = p_frag->p_buffer[6]&0x03; diff --git a/share/lua/playlist/liveleak.lua b/share/lua/playlist/liveleak.lua index 6811977b34..170f07714f 100644 --- a/share/lua/playlist/liveleak.lua +++ b/share/lua/playlist/liveleak.lua @@ -1,9 +1,10 @@ --[[ $Id$ - Copyright © 2012 VideoLAN and AUTHORS + Copyright © 2012, 2017 VideoLAN and AUTHORS Authors: Ludovic Fauvet <etix@videolan.org> + Pierre Ynard This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -22,8 +23,8 @@ -- Probe function. function probe() - return vlc.access == "http" - and string.match( vlc.path, "www.liveleak.com/view" ) + return ( vlc.access == "http" or vlc.access == "https" ) + and string.match( vlc.path, "^www%.liveleak%.com/view" ) end -- Util function @@ -46,18 +47,31 @@ function parse() -- Try to find the title if string.match( line, '<span class="section_title"' ) then title = find( line, '<span class="section_title"[^>]*>(.-)<' ) - title = string.gsub( title, ' ', ' ' ) + title = vlc.strings.resolve_xml_special_chars( title ) end -- Try to find the art - if string.match( line, 'image:' ) then - art = find( line, 'image: "(.-)"' ) + if not art then + art = string.match( line, '<meta property="og:image" content="([^"]+)"' ) end -- Try to find the video - if string.match( line, 'file:' ) then - video = find( line, 'file: "(.-)"' ) + if not video and string.match( line, '<source ' ) then + -- Apparently the two formats are listed HD first, SD second + local prefres = vlc.var.inherit( nil, 'preferred-resolution' ) + for src in string.gmatch( line, '<source src="([^"]+)"' ) do + video = src + + if prefres < 0 then + break + end + local height = tonumber( string.match( src, '_(%d+)p%.mp4' ) ) + if ( not height ) or height <= prefres then + break + end + end end + end if video then table.insert( p, { path = video; name = title; arturl = art; } ) diff --git a/share/lua/playlist/soundcloud.lua b/share/lua/playlist/soundcloud.lua index 3ad7567039..8b5f65fa6a 100644 --- a/share/lua/playlist/soundcloud.lua +++ b/share/lua/playlist/soundcloud.lua @@ -46,10 +46,10 @@ function parse() local track = string.match( line, "soundcloud:tracks:(%d+)" ) if track then -- API magic - local client_id = "fDoItMDbsbZz8dY16ZzARCZmzgHBPotA" + local client_id = "2t9loNQH90kzJcsFCODdigxfp325aq4z" -- app_version is not required by the API but we send it -- anyway to remain unconspicuous - local app_version = "1480607078" + local app_version = "1489155300" local api = vlc.stream( "https://api.soundcloud.com/i1/tracks/"..track.."/streams?client_id="..client_id.."&app_version="..app_version ) if not api then diff --git a/share/lua/playlist/youtube.lua b/share/lua/playlist/youtube.lua index d3fa4bc7b7..b386d90b7f 100644 --- a/share/lua/playlist/youtube.lua +++ b/share/lua/playlist/youtube.lua @@ -78,13 +78,10 @@ function buf_iter( s ) end -- Helper to search and extract code from javascript stream -function js_extract( js, pattern, alt ) +function js_extract( js, pattern ) js.i = 0 -- Reset to beginning for line in buf_iter, js do local ex = string.match( line, pattern ) - if not ex and alt then - ex = string.match( line, alt ) - end if ex then return ex end @@ -105,7 +102,7 @@ function js_descramble( sig, js_url ) -- Look for the descrambler function's name -- c&&a.set("signature",br(c)); - local descrambler = js_extract( js, "%.set%(\"signature\",(.-)%(", nil ) + local descrambler = js_extract( js, "%.set%(\"signature\",([^)]-)%(" ) if not descrambler then vlc.msg.dbg( "Couldn't extract youtube video URL signature descrambling function name" ) return sig @@ -113,9 +110,7 @@ function js_descramble( sig, js_url ) -- Fetch the code of the descrambler function -- Go=function(a){a=a.split("");Fo.sH(a,2);Fo.TU(a,28);Fo.TU(a,44);Fo.TU(a,26);Fo.TU(a,40);Fo.TU(a,64);Fo.TR(a,26);Fo.sH(a,1);return a.join("")}; - local rules = js_extract( js, "^"..descrambler.."=function%([^)]*%){(.-)};", - -- Legacy/alternate format - "function "..descrambler.."%([^)]*%){(.-)}" ) + local rules = js_extract( js, "^"..descrambler.."=function%([^)]*%){(.-)};" ) if not rules then vlc.msg.dbg( "Couldn't extract youtube video URL signature descrambling rules" ) return sig @@ -131,7 +126,7 @@ function js_descramble( sig, js_url ) -- Fetch the helper object code -- var Fo={TR:function(a){a.reverse()},TU:function(a,b){var c=a[0];a[0]=a[b%a.length];a[b]=c},sH:function(a,b){a.splice(0,b)}}; - local transformations = js_extract( js, "[ ,]"..helper.."={(.-)};", nil ) + local transformations = js_extract( js, "[ ,]"..helper.."={(.-)};" ) if not transformations then vlc.msg.dbg( "Couldn't extract youtube video URL signature transformation code" ) return sig diff --git a/src/input/decoder.c b/src/input/decoder.c index 94b7983564..9f7dc18900 100644 --- a/src/input/decoder.c +++ b/src/input/decoder.c @@ -2,7 +2,7 @@ * decoder.c: Functions for the management of decoders ***************************************************************************** * Copyright (C) 1999-2004 VLC authors and VideoLAN - * $Id: ef865e922078c8ac1dedbc5b56938d58b9bface5 $ + * $Id: 2c0823feb51643f9fa8170e8d026118eef3e8f23 $ * * Authors: Christophe Massiot <massiot@via.ecp.fr> * Gildas Bazin <gbazin@videolan.org> @@ -1954,8 +1954,9 @@ static int aout_update_format( decoder_t *p_dec ) { decoder_owner_sys_t *p_owner = p_dec->p_owner; - if( p_owner->p_aout - && !AOUT_FMTS_IDENTICAL(&p_dec->fmt_out.audio, &p_owner->audio) ) + if( p_owner->p_aout && + ( !AOUT_FMTS_IDENTICAL(&p_dec->fmt_out.audio, &p_owner->audio) || + p_dec->fmt_out.i_codec != p_dec->fmt_out.audio.i_format ) ) { audio_output_t *p_aout = p_owner->p_aout; diff --git a/src/revision.c b/src/revision.c index 4612da0af0..101a2bccf8 100644 --- a/src/revision.c +++ b/src/revision.c @@ -1 +1 @@ -const char psz_vlc_changeset[] = "2.2.5-0-g9275f0fefa"; +const char psz_vlc_changeset[] = "2.2.5.1-14-g05b653355c"; diff --git a/src/revision.txt b/src/revision.txt index 8f8c0f4216..7514b35360 100644 --- a/src/revision.txt +++ b/src/revision.txt @@ -1 +1 @@ -2.2.5-0-g9275f0fefa +2.2.5.1-14-g05b653355c diff --git a/configure.ac b/configure.ac index e68ce88618..d3f8685db3 100644 --- a/configure.ac +++ b/configure.ac @@ -2,18 +2,18 @@ dnl Autoconf settings for vlc AC_COPYRIGHT([Copyright 1999-2017 VLC authors and VideoLAN]) -AC_INIT(vlc, 2.2.5) +AC_INIT(vlc, 2.2.5.1) VERSION_MAJOR=2 VERSION_MINOR=2 VERSION_REVISION=5 -VERSION_EXTRA=0 +VERSION_EXTRA=1 VERSION_DEV= PKGDIR="vlc" AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Weatherwax" +CODENAME="Umbrella" COPYRIGHT_YEARS="1996-2017" AC_CONFIG_SRCDIR(src/libvlc.c) @@ -253,7 +253,7 @@ case "${host_os}" in # DEP, ASLR, NO SEH LDFLAGS="${LDFLAGS} -Wl,--nxcompat -Wl,--no-seh -Wl,--dynamicbase" - VLC_ADD_LIBS([libvlccore],[-lwinmm]) + VLC_ADD_LIBS([libvlccore],[]) VLC_ADD_LDFLAGS([vlc],[-mwindows]) VLC_ADD_LIBS([win32text],[-lgdi32]) AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) @@ -2431,7 +2431,7 @@ AS_IF([test "${enable_dxva2}" != "no"], [ AS_IF([test "${enable_dxva2}" = "yes"], [AC_MSG_ERROR([Could not find required dxva2api.h])], [AC_MSG_WARN([dxva2api.h not found])]) - ]) + ], [#include <d3d9.h>]) ],[ AS_IF([test "x${enable_dxva2}" != "x"], [ AC_MSG_ERROR([--enable-dxva2 and --disable-avcodec options are mutually exclusive.]) @@ -4183,6 +4183,14 @@ AS_IF([test "${with_kde_solid}" != "no"], [ AC_SUBST(soliddatadir) AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"]) +dnl +dnl Check wether we have the PROCESS_MITIGATION_IMAGE_LOAD_POLICY +dnl It should only be available when building for win10, but some SDKs define it unconditionnaly +dnl +if test "${SYS}" = "mingw32"; then + AC_CHECK_TYPES([PROCESS_MITIGATION_IMAGE_LOAD_POLICY],,,[#include <windows.h>]) +fi + EXTEND_HELP_STRING([Components:]) dnl
Attachment:
signature.asc
Description: PGP signature