From owner-svn-ports-all@freebsd.org Thu Apr 20 01:34:58 2017 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B3731D462D6; Thu, 20 Apr 2017 01:34:58 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 578371E0B; Thu, 20 Apr 2017 01:34:58 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v3K1YvAx013177; Thu, 20 Apr 2017 01:34:57 GMT (envelope-from jbeich@FreeBSD.org) Received: (from jbeich@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v3K1YuiH013168; Thu, 20 Apr 2017 01:34:56 GMT (envelope-from jbeich@FreeBSD.org) Message-Id: <201704200134.v3K1YuiH013168@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jbeich set sender to jbeich@FreeBSD.org using -f From: Jan Beich Date: Thu, 20 Apr 2017 01:34:56 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r438918 - in branches/2017Q2: . Mk Mk/Uses www/firefox www/firefox-i18n www/firefox/files X-SVN-Group: ports-branches MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Apr 2017 01:34:58 -0000 Author: jbeich Date: Thu Apr 20 01:34:56 2017 New Revision: 438918 URL: https://svnweb.freebsd.org/changeset/ports/438918 Log: MFH: r438264 r438304 r438305 r438318 r438394 r438359 r438428 r438521 r438796 www/firefox: update to 53.0 Changes: https://www.mozilla.org/firefox/53.0/releasenotes/ Security: 5e0a038a-ca30-416d-a2f5-38cbf5e7df33 Approved by: ports-secteam (junovitch) Added: branches/2017Q2/www/firefox/files/patch-python_futures_concurrent_futures_process.py - copied unchanged from r438796, head/www/firefox/files/patch-python_futures_concurrent_futures_process.py Deleted: branches/2017Q2/www/firefox/files/patch-bug1013882 branches/2017Q2/www/firefox/files/patch-bug1316879 branches/2017Q2/www/firefox/files/patch-bug1321877 branches/2017Q2/www/firefox/files/patch-bug1322112 branches/2017Q2/www/firefox/files/patch-bug1322660 branches/2017Q2/www/firefox/files/patch-bug1336791 branches/2017Q2/www/firefox/files/patch-toolkit_mozapps_installer_packager_mk Modified: branches/2017Q2/Mk/Uses/gecko.mk branches/2017Q2/Mk/bsd.gecko.mk branches/2017Q2/UPDATING branches/2017Q2/www/firefox-i18n/Makefile branches/2017Q2/www/firefox-i18n/distinfo branches/2017Q2/www/firefox/Makefile branches/2017Q2/www/firefox/distinfo branches/2017Q2/www/firefox/files/patch-bug1021761 branches/2017Q2/www/firefox/files/patch-bug826985 Directory Properties: branches/2017Q2/ (props changed) Modified: branches/2017Q2/Mk/Uses/gecko.mk ============================================================================== --- branches/2017Q2/Mk/Uses/gecko.mk Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/Mk/Uses/gecko.mk Thu Apr 20 01:34:56 2017 (r438918) @@ -37,12 +37,12 @@ RUN_DEPENDS+= libxul>=45:www/libxul .elif ${gecko_ARGS:Mfirefox} _GECKO_DEFAULT_VERSION= 45 -_GECKO_VERSIONS= 45 52 +_GECKO_VERSIONS= 45 53 _GECKO_TYPE= firefox # Dependence lines for different Firefox versions 45_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr -52_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox +53_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox .if exists(${LOCALBASE}/bin/firefox) _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null Modified: branches/2017Q2/Mk/bsd.gecko.mk ============================================================================== --- branches/2017Q2/Mk/bsd.gecko.mk Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/Mk/bsd.gecko.mk Thu Apr 20 01:34:56 2017 (r438918) @@ -249,7 +249,7 @@ BUILD_DEPENDS+= ${-${dep}_BUILD_DEPENDS} # Standard options MOZ_CHROME?= omni -MOZ_TOOLKIT?= cairo-gtk2 +MOZ_TOOLKIT?= cairo-gtk3 MOZ_CHANNEL?= ${PKGNAMESUFFIX:Urelease:S/^-//} MOZ_OPTIONS+= \ --enable-chrome-format=${MOZ_CHROME} \ @@ -278,8 +278,8 @@ MOZ_OPTIONS+= --with-system-zlib \ # please get your own set of keys. MOZ_EXPORT+= MOZ_GOOGLE_API_KEY=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 -.if ${PORT_OPTIONS:MGTK3} -MOZ_TOOLKIT= cairo-gtk3 +.if ${PORT_OPTIONS:MGTK2} +MOZ_TOOLKIT= cairo-gtk2 .endif .if ${MOZ_TOOLKIT:Mcairo-gtk3} @@ -375,8 +375,13 @@ LIB_DEPENDS+= libsndio.so:audio/sndio post-patch-SNDIO-on: @${REINPLACE_CMD} -e 's|OpenBSD|${OPSYS}|g' \ ${MOZSRC}/media/libcubeb/src/moz.build \ - ${MOZSRC}/media/libcubeb/tests/moz.build \ ${MOZSRC}/toolkit/library/moz.build +. for tests in tests gtest + @if [ -f "${MOZSRC}/media/libcubeb/${tests}/moz.build" ]; then \ + ${REINPLACE_CMD} -e 's|OpenBSD|${OPSYS}|g' \ + ${MOZSRC}/media/libcubeb/${tests}/moz.build \ + ; fi +. endfor @${REINPLACE_CMD} -e 's|OS==\"openbsd\"|OS==\"${OPSYS:tl}\"|g' \ ${MOZSRC}/media/webrtc/trunk/webrtc/build/common.gypi @${ECHO} "OS_LIBS += ['sndio']" >> \ Modified: branches/2017Q2/UPDATING ============================================================================== --- branches/2017Q2/UPDATING Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/UPDATING Thu Apr 20 01:34:56 2017 (r438918) @@ -5,6 +5,33 @@ they are unavoidable. You should get into the habit of checking this file for changes each time you update your ports collection, before attempting any port upgrades. +20170411: + AFFECTS: www/firefox + AUTHOR: gecko@FreeBSD.org + + Firefox 53 or later may fail to build if sem(4) is present (see below) + because sysconf(3) still consults the old limits. If you don't plan to + run FreeBSD 8.x or older binaries make sure sem(4) isn't loaded during + boot or built statically into the kernel. + + Creating config.status + Traceback (most recent call last): + File "configure.py", line 124, in + sys.exit(main(sys.argv)) + File "configure.py", line 34, in main + return config_status(config) + File "configure.py", line 119, in config_status + return config_status(args=[], **encode(sanitized_config, encoding)) + File "python/mozbuild/mozbuild/config_status.py", line 136, in config_status + reader = BuildReader(env) + File "python/mozbuild/mozbuild/frontend/reader.py", line 886, in __init__ + self._gyp_worker_pool = ProcessPoolExecutor(max_workers=max_workers) + File "python/futures/concurrent/futures/process.py", line 274, in __init__ + _check_system_limits() + File "python/futures/concurrent/futures/process.py", line 263, in _check_system_limits + raise NotImplementedError(_system_limited) + NotImplementedError: system provides too few semaphores (30 available, 256 necessary) + 20170331: AFFECTS: users of security/openssh-portable AUTHOR: bdrewery@FreeBSD.org Modified: branches/2017Q2/www/firefox-i18n/Makefile ============================================================================== --- branches/2017Q2/www/firefox-i18n/Makefile Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/www/firefox-i18n/Makefile Thu Apr 20 01:34:56 2017 (r438918) @@ -2,10 +2,10 @@ # $FreeBSD$ PORTNAME= firefox-i18n -PORTVERSION= 52.0.2 +PORTVERSION= 53.0 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ - MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi + MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build6/linux-i686/xpi PKGNAMEPREFIX= DISTFILES= ${FIREFOX_I18N_:S/$/.xpi/} DIST_SUBDIR= xpi/${DISTNAME} @@ -15,7 +15,7 @@ COMMENT= Localized interface for Firefox EXTRACT_DEPENDS= zip:archivers/zip -USES= zip:infozip gecko:firefox,52,build +USES= zip:infozip gecko:firefox,53,build USE_XPI= firefox NO_ARCH= yes Modified: branches/2017Q2/www/firefox-i18n/distinfo ============================================================================== --- branches/2017Q2/www/firefox-i18n/distinfo Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/www/firefox-i18n/distinfo Thu Apr 20 01:34:56 2017 (r438918) @@ -1,179 +1,179 @@ -TIMESTAMP = 1490348850 -SHA256 (xpi/firefox-i18n-52.0.2/ach.xpi) = 46a28dec74c400b26b894ff50e386bc4cd657d09450b0b2daa643fed234a49fe -SIZE (xpi/firefox-i18n-52.0.2/ach.xpi) = 427637 -SHA256 (xpi/firefox-i18n-52.0.2/af.xpi) = c63b3bc898c1d05acfbc69cd98192568e8e69e66e54590a418ba5de9b05d2fd4 -SIZE (xpi/firefox-i18n-52.0.2/af.xpi) = 436821 -SHA256 (xpi/firefox-i18n-52.0.2/an.xpi) = d341e02116d166a57451a043eb8c1a33f528050483a54129c1a42b5a3257a205 -SIZE (xpi/firefox-i18n-52.0.2/an.xpi) = 445141 -SHA256 (xpi/firefox-i18n-52.0.2/ar.xpi) = b20d225e90ae1d7641faafd80e7d0e53b811473410d45a21dd2fc2dd2b3b9a77 -SIZE (xpi/firefox-i18n-52.0.2/ar.xpi) = 473379 -SHA256 (xpi/firefox-i18n-52.0.2/as.xpi) = ad300a4a43e6961a75bb50089427b292b53e90a02d5d4420aae364192e952d02 -SIZE (xpi/firefox-i18n-52.0.2/as.xpi) = 486886 -SHA256 (xpi/firefox-i18n-52.0.2/ast.xpi) = bb39846af23b0e422be4727359233cc2df3f80751a24f0ff933b094300263a62 -SIZE (xpi/firefox-i18n-52.0.2/ast.xpi) = 440030 -SHA256 (xpi/firefox-i18n-52.0.2/az.xpi) = 238b8948b8dd429b96a25dced6968d4154749ade71ff2ccfdcda3ed15d694b69 -SIZE (xpi/firefox-i18n-52.0.2/az.xpi) = 454920 -SHA256 (xpi/firefox-i18n-52.0.2/bg.xpi) = 98adcbaf6f62e3dc8533ba9ad304f4e2183ab6cf93434522fe748b7bd28a5b50 -SIZE (xpi/firefox-i18n-52.0.2/bg.xpi) = 487890 -SHA256 (xpi/firefox-i18n-52.0.2/bn-BD.xpi) = 796e8ec22cf717829f59c697fa26d4ac22ad0f911f080a16d5fdf87774ee35cf -SIZE (xpi/firefox-i18n-52.0.2/bn-BD.xpi) = 511992 -SHA256 (xpi/firefox-i18n-52.0.2/bn-IN.xpi) = b90a849d2d23a223aa19f237861c793c50b0978a5129c89fd201270cf01fad6f -SIZE (xpi/firefox-i18n-52.0.2/bn-IN.xpi) = 509373 -SHA256 (xpi/firefox-i18n-52.0.2/br.xpi) = 57c2d2b6b7a2ee58ac7955c3e3d1085cd8cfc8b308812907c8e2507ad5065501 -SIZE (xpi/firefox-i18n-52.0.2/br.xpi) = 435481 -SHA256 (xpi/firefox-i18n-52.0.2/bs.xpi) = a41b344e55c7bff518188dace17be215cdb3ed003f7373b3ed5792ed3ad9aa93 -SIZE (xpi/firefox-i18n-52.0.2/bs.xpi) = 441781 -SHA256 (xpi/firefox-i18n-52.0.2/ca.xpi) = 07a394409d6092353e621f526843c4dcf786375c022a46a074860d9d1bfaf974 -SIZE (xpi/firefox-i18n-52.0.2/ca.xpi) = 443303 -SHA256 (xpi/firefox-i18n-52.0.2/cs.xpi) = 63765555f13a30b00076139d9ae83666075c6ab82c2c3dd9c7cb03bf4bd30b83 -SIZE (xpi/firefox-i18n-52.0.2/cs.xpi) = 444072 -SHA256 (xpi/firefox-i18n-52.0.2/cy.xpi) = 5ed4f0cd18880dad59be7bfa0231c9b6c09328de8299d955ca495558ad5d3ec3 -SIZE (xpi/firefox-i18n-52.0.2/cy.xpi) = 436582 -SHA256 (xpi/firefox-i18n-52.0.2/da.xpi) = 496b38aaffb4014fbc85052027c3c5fb91222264ec289c49f11b59b36b03097d -SIZE (xpi/firefox-i18n-52.0.2/da.xpi) = 424391 -SHA256 (xpi/firefox-i18n-52.0.2/de.xpi) = 49b7a797e31288de30ec2b659940a96735bb658a7c5aa1a81e15d2708d117388 -SIZE (xpi/firefox-i18n-52.0.2/de.xpi) = 442477 -SHA256 (xpi/firefox-i18n-52.0.2/dsb.xpi) = 84f3d361fbb320ecc6a19d2bc6b2ed0b6fafc28527a26cea8481f1e31e6f7873 -SIZE (xpi/firefox-i18n-52.0.2/dsb.xpi) = 459422 -SHA256 (xpi/firefox-i18n-52.0.2/el.xpi) = d7068492c5fe5fece28c6b02416c22ed77e33bc2bf62cf9a391fc0872b81a1ce -SIZE (xpi/firefox-i18n-52.0.2/el.xpi) = 516590 -SHA256 (xpi/firefox-i18n-52.0.2/en-GB.xpi) = 66001390175d8983abc372e5092fd03ce452b0eab00419cbcde263eccf372f1b -SIZE (xpi/firefox-i18n-52.0.2/en-GB.xpi) = 419322 -SHA256 (xpi/firefox-i18n-52.0.2/en-US.xpi) = 457b7309200df9d7850412740f9ca093eb84a1222792aaa87681ae2fab6e6d03 -SIZE (xpi/firefox-i18n-52.0.2/en-US.xpi) = 428627 -SHA256 (xpi/firefox-i18n-52.0.2/en-ZA.xpi) = 4507c1d5fc872e8f7ece588811046e4a994de4f64590771d98287c2d4eeba1af -SIZE (xpi/firefox-i18n-52.0.2/en-ZA.xpi) = 412209 -SHA256 (xpi/firefox-i18n-52.0.2/eo.xpi) = 983b6af6b5576ae92305c9f3c3e59f361256535aff167f13c494b8e9baf36bae -SIZE (xpi/firefox-i18n-52.0.2/eo.xpi) = 437471 -SHA256 (xpi/firefox-i18n-52.0.2/es-AR.xpi) = 4e001c2ca079d338fb113c8ac173094a6b94428c18f2a987cdc2b40b015bd2e1 -SIZE (xpi/firefox-i18n-52.0.2/es-AR.xpi) = 445924 -SHA256 (xpi/firefox-i18n-52.0.2/es-CL.xpi) = dc7e749e4f2ca9c6960b426b9e2f636202ac3a2cc3f1b1b06df0f03bb531e1aa -SIZE (xpi/firefox-i18n-52.0.2/es-CL.xpi) = 445675 -SHA256 (xpi/firefox-i18n-52.0.2/es-ES.xpi) = dd1d6fbea50903fd37f7f122b94b857d8d3c1ea45ad0f18735586294ef651273 -SIZE (xpi/firefox-i18n-52.0.2/es-ES.xpi) = 344875 -SHA256 (xpi/firefox-i18n-52.0.2/es-MX.xpi) = 06b6fbf5bf090ca988ac646f7b7ad173f81fee4cbc06efa8aff60efd0f028b2d -SIZE (xpi/firefox-i18n-52.0.2/es-MX.xpi) = 448383 -SHA256 (xpi/firefox-i18n-52.0.2/et.xpi) = e58153f1cd3110d1d3a165ce7301fb618782b17454e481bc222fe231bf58ed60 -SIZE (xpi/firefox-i18n-52.0.2/et.xpi) = 425112 -SHA256 (xpi/firefox-i18n-52.0.2/eu.xpi) = 19d9fbf829a8ecc937c505240be92ec8a0324f19d05bcabe5a56a3e1fefefb6a -SIZE (xpi/firefox-i18n-52.0.2/eu.xpi) = 438477 -SHA256 (xpi/firefox-i18n-52.0.2/fa.xpi) = 4fa4505571ae92264ca42ca0a55cc59d137b37e77cdbb0b24fb21c56b9cce8c0 -SIZE (xpi/firefox-i18n-52.0.2/fa.xpi) = 491342 -SHA256 (xpi/firefox-i18n-52.0.2/ff.xpi) = 698a02e232bcbc5c67a566f666f5e462bfa66c104015cbf6a6938185fdef85f0 -SIZE (xpi/firefox-i18n-52.0.2/ff.xpi) = 440926 -SHA256 (xpi/firefox-i18n-52.0.2/fi.xpi) = 79f369ed2c47676fb8d13dae59499ca22bd33eb52a51ec661522070ab33c7f6e -SIZE (xpi/firefox-i18n-52.0.2/fi.xpi) = 430058 -SHA256 (xpi/firefox-i18n-52.0.2/fr.xpi) = 0f3aa5e2f940c9d58a73e6388db14776f857cbd6fdaa84c2b6078f9fa2dba8fb -SIZE (xpi/firefox-i18n-52.0.2/fr.xpi) = 450208 -SHA256 (xpi/firefox-i18n-52.0.2/fy-NL.xpi) = 397c97d97183730701ed3295d7aebddf32b81207ade87c14018ffaeaad81337c -SIZE (xpi/firefox-i18n-52.0.2/fy-NL.xpi) = 444971 -SHA256 (xpi/firefox-i18n-52.0.2/ga-IE.xpi) = 2a4ec23a859ed66eeac2da30a33333d53b69e995d5733e7ff8d4703d73a7f12d -SIZE (xpi/firefox-i18n-52.0.2/ga-IE.xpi) = 458163 -SHA256 (xpi/firefox-i18n-52.0.2/gd.xpi) = 9471b63f068a154896946d205062688b1f79646263431bbfa79d0e44c64fbe53 -SIZE (xpi/firefox-i18n-52.0.2/gd.xpi) = 447265 -SHA256 (xpi/firefox-i18n-52.0.2/gl.xpi) = 9b92c412edcecee43756ac709c0cd382561485ba9b2fb6c2c5e84878ed274087 -SIZE (xpi/firefox-i18n-52.0.2/gl.xpi) = 447294 -SHA256 (xpi/firefox-i18n-52.0.2/gn.xpi) = cb9fe1f0eb9f08046c96a0a60781a5f87b9d3116b6b87b1a8cc131328b413ae4 -SIZE (xpi/firefox-i18n-52.0.2/gn.xpi) = 456213 -SHA256 (xpi/firefox-i18n-52.0.2/gu-IN.xpi) = b27f5139ded670a4f58c7e2f55ee413758c9f46f9190e3398bffa8137588ae53 -SIZE (xpi/firefox-i18n-52.0.2/gu-IN.xpi) = 489365 -SHA256 (xpi/firefox-i18n-52.0.2/he.xpi) = 3975a4028cf4137fbe23f8d3daab92ba0116deabccfe9feb00be9f8bb10e9cd7 -SIZE (xpi/firefox-i18n-52.0.2/he.xpi) = 455281 -SHA256 (xpi/firefox-i18n-52.0.2/hi-IN.xpi) = 8039d71d12d43f98315d734f374461d17059b5f6d84c144f42e0e39c58bec2fd -SIZE (xpi/firefox-i18n-52.0.2/hi-IN.xpi) = 506516 -SHA256 (xpi/firefox-i18n-52.0.2/hr.xpi) = e3c7e75bc1d445a110e31aa823f2d60ba8283ceb9f1a0fb381d635a8d653c479 -SIZE (xpi/firefox-i18n-52.0.2/hr.xpi) = 447501 -SHA256 (xpi/firefox-i18n-52.0.2/hsb.xpi) = df1a7df836781b9d32ae33ebb3c01fd95b58ae75acf9e87655c7eb7114e4b08c -SIZE (xpi/firefox-i18n-52.0.2/hsb.xpi) = 457258 -SHA256 (xpi/firefox-i18n-52.0.2/hu.xpi) = 4ddcef44310b790c314e069556abb34fec9cc47fe25e0f89acfbdf2ae7c62725 -SIZE (xpi/firefox-i18n-52.0.2/hu.xpi) = 451493 -SHA256 (xpi/firefox-i18n-52.0.2/hy-AM.xpi) = 9d8227c27bee38324727681f4a6a58c2d111e38998b5c2e2be645d8a81ac5acb -SIZE (xpi/firefox-i18n-52.0.2/hy-AM.xpi) = 495771 -SHA256 (xpi/firefox-i18n-52.0.2/id.xpi) = aeb3aee8ff4066b8f5b6947c90b50daf49a42722b64ff219be7f050fbac500fa -SIZE (xpi/firefox-i18n-52.0.2/id.xpi) = 426022 -SHA256 (xpi/firefox-i18n-52.0.2/is.xpi) = 392d2e44f60ed162a0c1c662549d796d907529a7f48468c064f02daef4843300 -SIZE (xpi/firefox-i18n-52.0.2/is.xpi) = 442695 -SHA256 (xpi/firefox-i18n-52.0.2/it.xpi) = 9c61bfc7b21987c497941db6d8a7a8551e1af71deacd24b63971e000ecab3661 -SIZE (xpi/firefox-i18n-52.0.2/it.xpi) = 339219 -SHA256 (xpi/firefox-i18n-52.0.2/ja.xpi) = 631f3391dc3918369a5ef73982c020ed77566f06fef22a633828ae81b0f591c7 -SIZE (xpi/firefox-i18n-52.0.2/ja.xpi) = 488342 -SHA256 (xpi/firefox-i18n-52.0.2/kk.xpi) = 34530b6a9d15c22a9edbe43ac4d4f76e8c2a352355646ecfa3acfad236f0f1af -SIZE (xpi/firefox-i18n-52.0.2/kk.xpi) = 496937 -SHA256 (xpi/firefox-i18n-52.0.2/km.xpi) = 61fc53a527bc4c5723c71dffffc2564e413f6cc8b7ad9ba1208474e7b26ded7c -SIZE (xpi/firefox-i18n-52.0.2/km.xpi) = 520342 -SHA256 (xpi/firefox-i18n-52.0.2/kn.xpi) = b8b635b6d857a145d258fc7ef67609b4842c09de3857d3acb65058b1a9331dfa -SIZE (xpi/firefox-i18n-52.0.2/kn.xpi) = 519454 -SHA256 (xpi/firefox-i18n-52.0.2/ko.xpi) = 7b951abdbff6b3f2b1b2f074e9c2ac8c23f222a3379a40f278c7a218d1b07f32 -SIZE (xpi/firefox-i18n-52.0.2/ko.xpi) = 463629 -SHA256 (xpi/firefox-i18n-52.0.2/lij.xpi) = aa25a8a6b7bbf585199c655aabbd017e4dc11c05389e180d9e7d0df6245b7384 -SIZE (xpi/firefox-i18n-52.0.2/lij.xpi) = 421071 -SHA256 (xpi/firefox-i18n-52.0.2/lt.xpi) = a255238cff530ffaef75dcfe45bf8a22b59fae6be781da5fac3302af8c509dd1 -SIZE (xpi/firefox-i18n-52.0.2/lt.xpi) = 452234 -SHA256 (xpi/firefox-i18n-52.0.2/lv.xpi) = ca6828ae04899e618e576288bd2a45582347e31d4b1d3e3e9e27ec479cf1e280 -SIZE (xpi/firefox-i18n-52.0.2/lv.xpi) = 448449 -SHA256 (xpi/firefox-i18n-52.0.2/mai.xpi) = 02338b36d11863f61b1208a476b69dc0d1b4569500692a6041bce271d73ec488 -SIZE (xpi/firefox-i18n-52.0.2/mai.xpi) = 499838 -SHA256 (xpi/firefox-i18n-52.0.2/mk.xpi) = cccd132a530a4a0bd20e573a5b9eb01e20a6b214b4dcb4b0b5172d438ad09098 -SIZE (xpi/firefox-i18n-52.0.2/mk.xpi) = 496198 -SHA256 (xpi/firefox-i18n-52.0.2/ml.xpi) = 8a06f9959060884b660b7e0c7d8ac5bca3af2cbede25fabcada56c450147cfe9 -SIZE (xpi/firefox-i18n-52.0.2/ml.xpi) = 516485 -SHA256 (xpi/firefox-i18n-52.0.2/mr.xpi) = cdd57ca6da4964c3d85db9ae5b66344ea37b462e5c6a8d67cab9c5984942b9b8 -SIZE (xpi/firefox-i18n-52.0.2/mr.xpi) = 502429 -SHA256 (xpi/firefox-i18n-52.0.2/ms.xpi) = 575abeeaa27eadb22bb7db64455d2ea3a0e1e1489e4649084b5da888dd6a3ef5 -SIZE (xpi/firefox-i18n-52.0.2/ms.xpi) = 435989 -SHA256 (xpi/firefox-i18n-52.0.2/nb-NO.xpi) = 0eb0571fe1f2ce42b531e872a75e144905feb9df3a5222539cb57625c732b1c1 -SIZE (xpi/firefox-i18n-52.0.2/nb-NO.xpi) = 434410 -SHA256 (xpi/firefox-i18n-52.0.2/nl.xpi) = f087cb5cfc1ca8a8099f1780eb4af54d45634f3b29413007cc43054c8ac0312b -SIZE (xpi/firefox-i18n-52.0.2/nl.xpi) = 432005 -SHA256 (xpi/firefox-i18n-52.0.2/nn-NO.xpi) = 36f8c050f21d068f1af7305258273257c66087849d1bb28970075057f6636434 -SIZE (xpi/firefox-i18n-52.0.2/nn-NO.xpi) = 428642 -SHA256 (xpi/firefox-i18n-52.0.2/or.xpi) = 1da04e28aa10b9af5e4f964674116a14905480d346f054f0dbf6ee69d5543a7b -SIZE (xpi/firefox-i18n-52.0.2/or.xpi) = 496914 -SHA256 (xpi/firefox-i18n-52.0.2/pa-IN.xpi) = f1ffa9dbfef26c65187a76d85c88cdea8fd4351fa0a7deda8d53c9af5aa3b78a -SIZE (xpi/firefox-i18n-52.0.2/pa-IN.xpi) = 476585 -SHA256 (xpi/firefox-i18n-52.0.2/pl.xpi) = e80cc845cd383cda82fdc2bb0e4e0ddeb4029558546d2bc03e3d8239eacb8463 -SIZE (xpi/firefox-i18n-52.0.2/pl.xpi) = 352850 -SHA256 (xpi/firefox-i18n-52.0.2/pt-BR.xpi) = 9e452c0562f4241302ffe682967d8635805c9733e2b7cbde2a57bca1df4d6e52 -SIZE (xpi/firefox-i18n-52.0.2/pt-BR.xpi) = 438168 -SHA256 (xpi/firefox-i18n-52.0.2/pt-PT.xpi) = 914ad44b853ef8eb25c8c255619b467dba4329be5e76ece189de72c43d5e39b5 -SIZE (xpi/firefox-i18n-52.0.2/pt-PT.xpi) = 436725 -SHA256 (xpi/firefox-i18n-52.0.2/rm.xpi) = 07c385a14377d8eeba68406ab1dd40b8506147c55133bb604b048e1543bf1821 -SIZE (xpi/firefox-i18n-52.0.2/rm.xpi) = 434607 -SHA256 (xpi/firefox-i18n-52.0.2/ro.xpi) = 60198c04cdab52fd275abe62f56e04289ae7a22f7d84cdf61a06589431557168 -SIZE (xpi/firefox-i18n-52.0.2/ro.xpi) = 449935 -SHA256 (xpi/firefox-i18n-52.0.2/ru.xpi) = 619efb022f7eedefb5c3e3e9038bf6dd3e95fc73f1de8049b97631110560c93f -SIZE (xpi/firefox-i18n-52.0.2/ru.xpi) = 395362 -SHA256 (xpi/firefox-i18n-52.0.2/si.xpi) = 4e90ee6fba5bebd359541af331a0728131476e41e2b02d774f9da6b7e3e808df -SIZE (xpi/firefox-i18n-52.0.2/si.xpi) = 491957 -SHA256 (xpi/firefox-i18n-52.0.2/sk.xpi) = 21e46ea68503a8058188822dc774a9463ae60a60642bfa0b750c39c7f356aa19 -SIZE (xpi/firefox-i18n-52.0.2/sk.xpi) = 455817 -SHA256 (xpi/firefox-i18n-52.0.2/sl.xpi) = d7960ff34578f09f4d9caa5630d7550b22235f36ab2b4ac876dcdd0192a444a7 -SIZE (xpi/firefox-i18n-52.0.2/sl.xpi) = 433481 -SHA256 (xpi/firefox-i18n-52.0.2/son.xpi) = bdc20ab4dacf72d375dc22677134e0b57cd79705e8a86dfcc9376e33b2fde193 -SIZE (xpi/firefox-i18n-52.0.2/son.xpi) = 435126 -SHA256 (xpi/firefox-i18n-52.0.2/sq.xpi) = 42769c0e78ae845c439a606480bfe38cf7a0f0428e692f1ccb54ae9490619a1d -SIZE (xpi/firefox-i18n-52.0.2/sq.xpi) = 448154 -SHA256 (xpi/firefox-i18n-52.0.2/sr.xpi) = 91eaa2f539233af915e816d2d0c165828e1b877b7ada63e86b43207900e30473 -SIZE (xpi/firefox-i18n-52.0.2/sr.xpi) = 463392 -SHA256 (xpi/firefox-i18n-52.0.2/sv-SE.xpi) = ebdfc72bec47311ccc4fb3c8d89de3ee82d6eba28a1e93a0864512f8a9df50fc -SIZE (xpi/firefox-i18n-52.0.2/sv-SE.xpi) = 441179 -SHA256 (xpi/firefox-i18n-52.0.2/ta.xpi) = a7c06a0a0275ea9df6a496b158ae13f58943811e29ceeec98697ba3c3a1a2f51 -SIZE (xpi/firefox-i18n-52.0.2/ta.xpi) = 494798 -SHA256 (xpi/firefox-i18n-52.0.2/te.xpi) = 8b91189605191a3704754f6421f7c2fb0dabc1237d44ec18b222b197b069be43 -SIZE (xpi/firefox-i18n-52.0.2/te.xpi) = 515239 -SHA256 (xpi/firefox-i18n-52.0.2/th.xpi) = 1309494d11a907096e04251978e090d85faa01af0672935cbef69e07ef513e83 -SIZE (xpi/firefox-i18n-52.0.2/th.xpi) = 489377 -SHA256 (xpi/firefox-i18n-52.0.2/tr.xpi) = 0e3b4defe3da096b0592fe2140bfa1a2f1d3471c6197f7c3fc3944f5a98c63ca -SIZE (xpi/firefox-i18n-52.0.2/tr.xpi) = 443670 -SHA256 (xpi/firefox-i18n-52.0.2/uk.xpi) = ce9e641feac457f804eb3654f8bbfbf57c8a5574185f09e13ed636b3b4b6cfe2 -SIZE (xpi/firefox-i18n-52.0.2/uk.xpi) = 495093 -SHA256 (xpi/firefox-i18n-52.0.2/uz.xpi) = 649a1bd017a6230868ce99eb55dab3ad6e27e443ba96f0fd6382e095006aaa4a -SIZE (xpi/firefox-i18n-52.0.2/uz.xpi) = 447914 -SHA256 (xpi/firefox-i18n-52.0.2/vi.xpi) = 7a8bc3e7c68853b2a32321a180d431522528bc2574cff6d37f565f58a32e2773 -SIZE (xpi/firefox-i18n-52.0.2/vi.xpi) = 450803 -SHA256 (xpi/firefox-i18n-52.0.2/xh.xpi) = bb5b38a0c4edf7b777efbff8c2f832ee9422247257d0cc25c5257122e76cdfb9 -SIZE (xpi/firefox-i18n-52.0.2/xh.xpi) = 441170 -SHA256 (xpi/firefox-i18n-52.0.2/zh-CN.xpi) = b09d4dc5567d0e147c4d1ed623a65f44f60ad67601b7d285f5d5658901c594db -SIZE (xpi/firefox-i18n-52.0.2/zh-CN.xpi) = 461691 -SHA256 (xpi/firefox-i18n-52.0.2/zh-TW.xpi) = 26061af5b560a3df1657f589741fd551c607142cb775981492bdfad888fc4cb8 -SIZE (xpi/firefox-i18n-52.0.2/zh-TW.xpi) = 472532 +TIMESTAMP = 1491914864 +SHA256 (xpi/firefox-i18n-53.0/ach.xpi) = 6b50af6b457608c625b5a99c0f467e9e13827e84387223682c251847ef12ec03 +SIZE (xpi/firefox-i18n-53.0/ach.xpi) = 432350 +SHA256 (xpi/firefox-i18n-53.0/af.xpi) = 2e030e8d993a72fc2b922bd71749564706d5bbc4f5edd1d5cb0a2e2d341dd397 +SIZE (xpi/firefox-i18n-53.0/af.xpi) = 441829 +SHA256 (xpi/firefox-i18n-53.0/an.xpi) = 3b049eabcf49f57742f574c792b0f15a2f0fe7af8d7700074555741eba4b40bd +SIZE (xpi/firefox-i18n-53.0/an.xpi) = 450799 +SHA256 (xpi/firefox-i18n-53.0/ar.xpi) = 0df14612d4a6fe4e6da247b8529b45ab856d3a6d6bf284dac9654af2b4c91909 +SIZE (xpi/firefox-i18n-53.0/ar.xpi) = 479118 +SHA256 (xpi/firefox-i18n-53.0/as.xpi) = 67a780398046cfb66c7b10d8aa3e42a7b8eef5d8eedb2f7d890ab1a748049708 +SIZE (xpi/firefox-i18n-53.0/as.xpi) = 491255 +SHA256 (xpi/firefox-i18n-53.0/ast.xpi) = 0b0cab248642b295d3ec4fdb5206c4b4ab3ec1d8aa9cec573f230bd6fa75a816 +SIZE (xpi/firefox-i18n-53.0/ast.xpi) = 445436 +SHA256 (xpi/firefox-i18n-53.0/az.xpi) = 59ead0e267f43af93c7caa1148947224dc4206d42a37f80156ff47adae994261 +SIZE (xpi/firefox-i18n-53.0/az.xpi) = 459503 +SHA256 (xpi/firefox-i18n-53.0/bg.xpi) = 5ca6477997bd96165af804a2a8bcd6c01c8bfb5c9f98354e1602f49a922cf65b +SIZE (xpi/firefox-i18n-53.0/bg.xpi) = 492607 +SHA256 (xpi/firefox-i18n-53.0/bn-BD.xpi) = 9f52c102c056489b2187f9d781a645f2c1d205b812a3ca6afdad56130c211c7f +SIZE (xpi/firefox-i18n-53.0/bn-BD.xpi) = 516501 +SHA256 (xpi/firefox-i18n-53.0/bn-IN.xpi) = f913e5d79388285ae6a7e7f59b81855135336c50c37e3dd90cbd101057017600 +SIZE (xpi/firefox-i18n-53.0/bn-IN.xpi) = 513552 +SHA256 (xpi/firefox-i18n-53.0/br.xpi) = 0bb79e4c792cd3bba0804064f91963389daba26a486cbf3fe84045ee6701ec07 +SIZE (xpi/firefox-i18n-53.0/br.xpi) = 440067 +SHA256 (xpi/firefox-i18n-53.0/bs.xpi) = e4c803a77b70c0077c3f0fb467a601b5ff143a37ac8303dd97005b7aa3007864 +SIZE (xpi/firefox-i18n-53.0/bs.xpi) = 446633 +SHA256 (xpi/firefox-i18n-53.0/ca.xpi) = 18483d647252cb2d6c9be0a2ec460de22cdecaa492b02d4a1ef3e5f9ded2aa59 +SIZE (xpi/firefox-i18n-53.0/ca.xpi) = 448941 +SHA256 (xpi/firefox-i18n-53.0/cs.xpi) = 5335967e578088e691d59a6f0540380075dab79e611c53fd67e2938da432f25a +SIZE (xpi/firefox-i18n-53.0/cs.xpi) = 449411 +SHA256 (xpi/firefox-i18n-53.0/cy.xpi) = 0822da739fc2ce0bf267dcafc8af2841432e62793e4c66ca79d0d937c4e5780e +SIZE (xpi/firefox-i18n-53.0/cy.xpi) = 441503 +SHA256 (xpi/firefox-i18n-53.0/da.xpi) = 823dfd42463c4b31a6a5b1cfdcb79bfda8e80ade999cd9d481d09e48b97190c6 +SIZE (xpi/firefox-i18n-53.0/da.xpi) = 428973 +SHA256 (xpi/firefox-i18n-53.0/de.xpi) = 81a6ac063827b7c3eb99a26b491e26c5e6898edf51e2d836d60e14a69a2d150d +SIZE (xpi/firefox-i18n-53.0/de.xpi) = 447784 +SHA256 (xpi/firefox-i18n-53.0/dsb.xpi) = 72e03e9bcefc173af4df02bfc99f22df99e7b3829cbc1d07de1b3d98e8092b35 +SIZE (xpi/firefox-i18n-53.0/dsb.xpi) = 464374 +SHA256 (xpi/firefox-i18n-53.0/el.xpi) = e8815fb6cae7632d70ae00cd28293a96f9d875f4f2e4e6c1491751037f293437 +SIZE (xpi/firefox-i18n-53.0/el.xpi) = 523412 +SHA256 (xpi/firefox-i18n-53.0/en-GB.xpi) = 258bec58ec28b75eb3db7c9b9cc68af21497eb49603994ace4aaa105840c84fd +SIZE (xpi/firefox-i18n-53.0/en-GB.xpi) = 424829 +SHA256 (xpi/firefox-i18n-53.0/en-US.xpi) = e8d3d164d433d755f7619c8413d1f53041f2f23d5819c8043362408b26245398 +SIZE (xpi/firefox-i18n-53.0/en-US.xpi) = 430736 +SHA256 (xpi/firefox-i18n-53.0/en-ZA.xpi) = 0fe0b4fc2bb38f15bfff36e44bbb2c62715daaa6b242f3914581512684fddeb7 +SIZE (xpi/firefox-i18n-53.0/en-ZA.xpi) = 417992 +SHA256 (xpi/firefox-i18n-53.0/eo.xpi) = 541501fc0829fcf8147ee269224928b52e6cf4e8f1b362a4177d63f906db902e +SIZE (xpi/firefox-i18n-53.0/eo.xpi) = 442322 +SHA256 (xpi/firefox-i18n-53.0/es-AR.xpi) = 61ff3ce7467b5222e110107c4119e9f752645ad0b31c6b614487bb5c533a0311 +SIZE (xpi/firefox-i18n-53.0/es-AR.xpi) = 450766 +SHA256 (xpi/firefox-i18n-53.0/es-CL.xpi) = a806fc6176247cda5a54ef853c9637775f9a1c2e29a87dd1b55742a71f852b33 +SIZE (xpi/firefox-i18n-53.0/es-CL.xpi) = 450475 +SHA256 (xpi/firefox-i18n-53.0/es-ES.xpi) = 8604ba37430f71b800a67361ce53b2325d7d71cefd0167170db35c4f2e02ce59 +SIZE (xpi/firefox-i18n-53.0/es-ES.xpi) = 347587 +SHA256 (xpi/firefox-i18n-53.0/es-MX.xpi) = 2173f50a3dea92c658a7e60ae76fbab81335e2bd843a835bd31db2e6162d75f1 +SIZE (xpi/firefox-i18n-53.0/es-MX.xpi) = 453324 +SHA256 (xpi/firefox-i18n-53.0/et.xpi) = 1ded0ac4ec18c88b8c9425a9f00f02112514c0474c442d445fd210dae019bc77 +SIZE (xpi/firefox-i18n-53.0/et.xpi) = 428863 +SHA256 (xpi/firefox-i18n-53.0/eu.xpi) = 624fc7dfe57168f616153f03f34348786f82efe5dcb0a510d4e42c93560bede7 +SIZE (xpi/firefox-i18n-53.0/eu.xpi) = 443202 +SHA256 (xpi/firefox-i18n-53.0/fa.xpi) = a745c9cdf381f18097755226fd7fff59840c6498fd8601d8850f7b22d36ddddb +SIZE (xpi/firefox-i18n-53.0/fa.xpi) = 496781 +SHA256 (xpi/firefox-i18n-53.0/ff.xpi) = f68a9e23a8e2a02ff493ebd0bd9698b17ff5a5a3850bc8f21bf6fe2d6c6f22cf +SIZE (xpi/firefox-i18n-53.0/ff.xpi) = 446668 +SHA256 (xpi/firefox-i18n-53.0/fi.xpi) = b99cc77e76dcbf9a25fa68c622648aa9e2db64b610c83012d8695f13e55d23a9 +SIZE (xpi/firefox-i18n-53.0/fi.xpi) = 434620 +SHA256 (xpi/firefox-i18n-53.0/fr.xpi) = 85436c3886b9b89e601ddf39329af76275a0010fb6acc723574a239154cd3f07 +SIZE (xpi/firefox-i18n-53.0/fr.xpi) = 457534 +SHA256 (xpi/firefox-i18n-53.0/fy-NL.xpi) = 1896b79fd6ac6bfa4beca5f56d88292375231836d1d031a4146b126f464403ea +SIZE (xpi/firefox-i18n-53.0/fy-NL.xpi) = 449819 +SHA256 (xpi/firefox-i18n-53.0/ga-IE.xpi) = c276e493fd8a6a77bb9f6a0542763ded93ceff0f74dfdc7329f2c86105d30e6c +SIZE (xpi/firefox-i18n-53.0/ga-IE.xpi) = 463129 +SHA256 (xpi/firefox-i18n-53.0/gd.xpi) = 4da4ab8fc415524ea83e99f63edc5546c0027e8b3dca1615905e69521c358a38 +SIZE (xpi/firefox-i18n-53.0/gd.xpi) = 452061 +SHA256 (xpi/firefox-i18n-53.0/gl.xpi) = 3a6bbcc4ac4e7b6a16031a64a8b8518fa18c7932d90bbbedfa79beecc32ece96 +SIZE (xpi/firefox-i18n-53.0/gl.xpi) = 449150 +SHA256 (xpi/firefox-i18n-53.0/gn.xpi) = b750ecda7bef4e14213d8e04281e080748cf48ec6e26e81457de9451aabd1454 +SIZE (xpi/firefox-i18n-53.0/gn.xpi) = 461571 +SHA256 (xpi/firefox-i18n-53.0/gu-IN.xpi) = 922ab30d6f1cb0747d1cd18ec526014e6f1761d5667f5d16eed834ac214149f4 +SIZE (xpi/firefox-i18n-53.0/gu-IN.xpi) = 493667 +SHA256 (xpi/firefox-i18n-53.0/he.xpi) = 11d021e790ab97612caa09afd29586fff8d680f8c4267920180f4a2b888e34a2 +SIZE (xpi/firefox-i18n-53.0/he.xpi) = 460047 +SHA256 (xpi/firefox-i18n-53.0/hi-IN.xpi) = af30c610f0e1300a2deeb47438e303b1714fd554f7859693d0a55109915d66d9 +SIZE (xpi/firefox-i18n-53.0/hi-IN.xpi) = 511787 +SHA256 (xpi/firefox-i18n-53.0/hr.xpi) = f4f7ffc50536c254a274e593eefb63fa5d26601968efc4f53d71179c6c95180c +SIZE (xpi/firefox-i18n-53.0/hr.xpi) = 453109 +SHA256 (xpi/firefox-i18n-53.0/hsb.xpi) = ba0e3f0d2d40c45d2b481dfd2680a2fc312e6eb981058c85e696690f90f52d4d +SIZE (xpi/firefox-i18n-53.0/hsb.xpi) = 462170 +SHA256 (xpi/firefox-i18n-53.0/hu.xpi) = 486d533bddbc6dd76a435fbe4efcb092218ec13ccc62aaaf2577b118d008bff8 +SIZE (xpi/firefox-i18n-53.0/hu.xpi) = 456925 +SHA256 (xpi/firefox-i18n-53.0/hy-AM.xpi) = d0b02e04e824c1110f3bc1c16854e0d65632fbc1683ff149def5cb3878e35dca +SIZE (xpi/firefox-i18n-53.0/hy-AM.xpi) = 500717 +SHA256 (xpi/firefox-i18n-53.0/id.xpi) = e4533c814f961d10f807c9e575989e1116bba1369731fc8f46c00fd5cc9d966a +SIZE (xpi/firefox-i18n-53.0/id.xpi) = 430280 +SHA256 (xpi/firefox-i18n-53.0/is.xpi) = da4be8811abad593f3f8bf06f922ccdc0873a59ed6f63fbfc5d541272e211b89 +SIZE (xpi/firefox-i18n-53.0/is.xpi) = 447329 +SHA256 (xpi/firefox-i18n-53.0/it.xpi) = 7dbbe76bfea715179c118ed0d3547596454d45e9ee0b001d876893db807b68b8 +SIZE (xpi/firefox-i18n-53.0/it.xpi) = 341968 +SHA256 (xpi/firefox-i18n-53.0/ja.xpi) = d0ce0ca453f180cdf7edabf18e3268f3117c70018fd2d06f870b60eee8d5c2cf +SIZE (xpi/firefox-i18n-53.0/ja.xpi) = 493027 +SHA256 (xpi/firefox-i18n-53.0/kk.xpi) = 29bbb10188bac81daf7d73c82da3d4c653fd4b8ae384527b18bbda3fed07eca3 +SIZE (xpi/firefox-i18n-53.0/kk.xpi) = 499340 +SHA256 (xpi/firefox-i18n-53.0/km.xpi) = 36101d95663960644b096602ee3db596b0f1e59ead95e9a5bf64be3accad8bdb +SIZE (xpi/firefox-i18n-53.0/km.xpi) = 524728 +SHA256 (xpi/firefox-i18n-53.0/kn.xpi) = 59c340fdedbf240a5e46e07144a11ce01cb0bd83d4cd7fa0c611e2f2bcbd465e +SIZE (xpi/firefox-i18n-53.0/kn.xpi) = 524035 +SHA256 (xpi/firefox-i18n-53.0/ko.xpi) = 9e67ce2142de5d82e959dff3e812efff88ec34f1b691d07fa0312a50173de95d +SIZE (xpi/firefox-i18n-53.0/ko.xpi) = 468651 +SHA256 (xpi/firefox-i18n-53.0/lij.xpi) = c739536b93b9f8a6b97f958531d19907752d77619d84232e03bf9b14bb543995 +SIZE (xpi/firefox-i18n-53.0/lij.xpi) = 435428 +SHA256 (xpi/firefox-i18n-53.0/lt.xpi) = 8a42c0b05b37d3554ae70478a84a16b8e78ee3aa6eb26a1b6fd4cbaba0e9c1bb +SIZE (xpi/firefox-i18n-53.0/lt.xpi) = 457033 +SHA256 (xpi/firefox-i18n-53.0/lv.xpi) = e2067c4beced017ce7559bf0bb610d5cc3e2fc0e2d654223e93224fe09f26c49 +SIZE (xpi/firefox-i18n-53.0/lv.xpi) = 453376 +SHA256 (xpi/firefox-i18n-53.0/mai.xpi) = de5a34ad598a77c50be8f51529ec384f163ab388d6c14919a1928bf00dc4a8ea +SIZE (xpi/firefox-i18n-53.0/mai.xpi) = 504301 +SHA256 (xpi/firefox-i18n-53.0/mk.xpi) = bd05f2c417b776651c5aa58f610d532a7b1402c9ab30fdde3126e3bd7b38ccc9 +SIZE (xpi/firefox-i18n-53.0/mk.xpi) = 499954 +SHA256 (xpi/firefox-i18n-53.0/ml.xpi) = 89e1127cfd43e994b39505b901e5dc696acbe744cd55f30ebfbd832530ae4d59 +SIZE (xpi/firefox-i18n-53.0/ml.xpi) = 520665 +SHA256 (xpi/firefox-i18n-53.0/mr.xpi) = 94d69be50f1c958102715dcc93ed12f2e9e8b8dd9431c9f675949b9208a0ae45 +SIZE (xpi/firefox-i18n-53.0/mr.xpi) = 507881 +SHA256 (xpi/firefox-i18n-53.0/ms.xpi) = d0a9ebeb04a68cbf250cfc02aca420e1398d09709dcc2ec2030b90ccaaeee314 +SIZE (xpi/firefox-i18n-53.0/ms.xpi) = 440726 +SHA256 (xpi/firefox-i18n-53.0/nb-NO.xpi) = d87de6098aa2e6a6589a4892009e321702cdf3ab78f1d098b8c8cc4002b8b250 +SIZE (xpi/firefox-i18n-53.0/nb-NO.xpi) = 439031 +SHA256 (xpi/firefox-i18n-53.0/nl.xpi) = d81a6ffa69b3735e9d2d7009a5272917566960842ef6bfd3d1ddfa79ef486954 +SIZE (xpi/firefox-i18n-53.0/nl.xpi) = 436859 +SHA256 (xpi/firefox-i18n-53.0/nn-NO.xpi) = 4e514e8d606b0af61e383830fb4cd01026c54670886c4292222280be15628afe +SIZE (xpi/firefox-i18n-53.0/nn-NO.xpi) = 433328 +SHA256 (xpi/firefox-i18n-53.0/or.xpi) = 1dd68ac544f06277082413f6673ec34e4e2472991b6ee3c0ee2e6eb2136da45f +SIZE (xpi/firefox-i18n-53.0/or.xpi) = 501207 +SHA256 (xpi/firefox-i18n-53.0/pa-IN.xpi) = 02fd50b2c13337bbda22d54d9284418ddbb015107194a0ceef1983686de8f76c +SIZE (xpi/firefox-i18n-53.0/pa-IN.xpi) = 480863 +SHA256 (xpi/firefox-i18n-53.0/pl.xpi) = a883b9cee7408f109fc1c4f7067081b83d483c341c972d1ba458635e64e68402 +SIZE (xpi/firefox-i18n-53.0/pl.xpi) = 354948 +SHA256 (xpi/firefox-i18n-53.0/pt-BR.xpi) = 0fa8dc3ed0ebd891e877782b04b9b256b9074612095feed6002b21d6beb27f21 +SIZE (xpi/firefox-i18n-53.0/pt-BR.xpi) = 442706 +SHA256 (xpi/firefox-i18n-53.0/pt-PT.xpi) = e330926df408aa8641f75736a9badef3e7e4e6e2aba7b2ea94b614aafdb563ae +SIZE (xpi/firefox-i18n-53.0/pt-PT.xpi) = 441597 +SHA256 (xpi/firefox-i18n-53.0/rm.xpi) = 02b3d8b7c7a955ebc031515048fa973901551e503b469404c9424188f7d7ffb1 +SIZE (xpi/firefox-i18n-53.0/rm.xpi) = 439746 +SHA256 (xpi/firefox-i18n-53.0/ro.xpi) = e4369e1952a7960a95b2c081c8103006b1d0cf6bf03caa42a457b5ef3300ab50 +SIZE (xpi/firefox-i18n-53.0/ro.xpi) = 454821 +SHA256 (xpi/firefox-i18n-53.0/ru.xpi) = a2d465ba99ba544cefd517c3c2725453501e04d993fe0c6554c04d5e1a2e52c6 +SIZE (xpi/firefox-i18n-53.0/ru.xpi) = 506893 +SHA256 (xpi/firefox-i18n-53.0/si.xpi) = 3f59729bae26437926a1db83d3cb711f5e5a7dc0b77bcb8ded6741cbaa400e35 +SIZE (xpi/firefox-i18n-53.0/si.xpi) = 496182 +SHA256 (xpi/firefox-i18n-53.0/sk.xpi) = 9b59cc6c64d376c99f599ba39094ac2c9d0cbd7460e8a22b27d6a0840337e3a4 +SIZE (xpi/firefox-i18n-53.0/sk.xpi) = 460857 +SHA256 (xpi/firefox-i18n-53.0/sl.xpi) = 04454bfb17d444bb5bee5075e67c63bbaa021293bfdb73ef6c34b41ddd16ddc6 +SIZE (xpi/firefox-i18n-53.0/sl.xpi) = 438368 +SHA256 (xpi/firefox-i18n-53.0/son.xpi) = e3eb6d18f50936eb502aa115f93b23769e7490b34fea9d7a95263a2700a52d99 +SIZE (xpi/firefox-i18n-53.0/son.xpi) = 439833 +SHA256 (xpi/firefox-i18n-53.0/sq.xpi) = 8e2472bdb82639b71fd57fa8f9beec91fb5d3542b086f24ff53155d12c66abe7 +SIZE (xpi/firefox-i18n-53.0/sq.xpi) = 453422 +SHA256 (xpi/firefox-i18n-53.0/sr.xpi) = c89f53af42e87fdb87cc5f3651fe4bd33c98ed2306102ed91961e2901793771e +SIZE (xpi/firefox-i18n-53.0/sr.xpi) = 467995 +SHA256 (xpi/firefox-i18n-53.0/sv-SE.xpi) = 8ea1cbf75b2a2dd31fbaabda7af29a911a70d0565c82058f38d677e43bf07e73 +SIZE (xpi/firefox-i18n-53.0/sv-SE.xpi) = 445794 +SHA256 (xpi/firefox-i18n-53.0/ta.xpi) = 6f9c38e64e388bc9d20e29ca63d3ff9b67b3d6a896bc0d647a50ec90295f3413 +SIZE (xpi/firefox-i18n-53.0/ta.xpi) = 500477 +SHA256 (xpi/firefox-i18n-53.0/te.xpi) = b7b8b3b74d150c3d676a2f527f77c3c80c2f4ecdf255e280ed2db3a748e6abe3 +SIZE (xpi/firefox-i18n-53.0/te.xpi) = 520473 +SHA256 (xpi/firefox-i18n-53.0/th.xpi) = baf97ade535c20e08c5a804a2a08441b07e6237b35970e9471490a8c74fb32d0 +SIZE (xpi/firefox-i18n-53.0/th.xpi) = 494085 +SHA256 (xpi/firefox-i18n-53.0/tr.xpi) = e25bdd9f0e2fccffd28cfeb4df596a41f762c20933593dfe3ff5b044af703e81 +SIZE (xpi/firefox-i18n-53.0/tr.xpi) = 445852 +SHA256 (xpi/firefox-i18n-53.0/uk.xpi) = b0259c08112f7a846d9fef89f1fc44130e7ce1760efaf4a0ec6e657c08351fac +SIZE (xpi/firefox-i18n-53.0/uk.xpi) = 497430 +SHA256 (xpi/firefox-i18n-53.0/uz.xpi) = 4b99ed2093fa73aa086bae96f4b04b34a8ea5f73aeb25ec21a1c316d97085224 +SIZE (xpi/firefox-i18n-53.0/uz.xpi) = 453390 +SHA256 (xpi/firefox-i18n-53.0/vi.xpi) = 0cdb6fd7573de2f4315d6c1d6011b6d74abb33f1e562a42b5807f4be3218a71e +SIZE (xpi/firefox-i18n-53.0/vi.xpi) = 455840 +SHA256 (xpi/firefox-i18n-53.0/xh.xpi) = 8999ad2228f4a96829e65a0c17f77bd2f9c21cba50f40238c381054dc358660d +SIZE (xpi/firefox-i18n-53.0/xh.xpi) = 446170 +SHA256 (xpi/firefox-i18n-53.0/zh-CN.xpi) = 3a0efa39397231033295ba594f4fff36ec3e829727a3c4e1fd7cafa6cf6a67da +SIZE (xpi/firefox-i18n-53.0/zh-CN.xpi) = 463955 +SHA256 (xpi/firefox-i18n-53.0/zh-TW.xpi) = 9e1f57da99b79fbce6d70f6d04e7295663c5e84fa151e9026c3519ab8d3bbd61 +SIZE (xpi/firefox-i18n-53.0/zh-TW.xpi) = 474980 Modified: branches/2017Q2/www/firefox/Makefile ============================================================================== --- branches/2017Q2/www/firefox/Makefile Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/www/firefox/Makefile Thu Apr 20 01:34:56 2017 (r438918) @@ -2,22 +2,23 @@ # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 52.0.2 +DISTVERSION= 53.0 DISTVERSIONSUFFIX=.source +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build6/source MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla BUILD_DEPENDS= nspr>=4.13.1:devel/nspr \ - nss>=3.28.3:security/nss \ + nss>=3.29.5:security/nss \ libevent>=2.0.21_2:devel/libevent \ harfbuzz>=1.4.1:print/harfbuzz \ graphite2>=1.3.8:graphics/graphite2 \ - png>=1.6.25:graphics/png \ + png>=1.6.28:graphics/png \ libvorbis>=1.3.5,3:audio/libvorbis \ libvpx>=1.5.0:multimedia/libvpx \ sqlite3>=3.17.0:databases/sqlite3 \ @@ -45,14 +46,11 @@ MOZ_OPTIONS= --enable-application=browse --enable-official-branding OPTIONS_DEFINE= RUST -OPTIONS_DEFAULT= BUNDLED_CAIRO GTK3 +OPTIONS_DEFAULT= BUNDLED_CAIRO # XXX lang/rust and devel/cargo currently build only on these platforms OPTIONS_DEFAULT_amd64= RUST OPTIONS_DEFAULT_i386= RUST -OPTIONS_SINGLE+= TOOLKIT -OPTIONS_SINGLE_TOOLKIT= GTK2 GTK3 - .include "${.CURDIR}/../../www/firefox/Makefile.options" WRKSRC:= ${WRKDIR}/${PORTNAME}-${DISTVERSION} Modified: branches/2017Q2/www/firefox/distinfo ============================================================================== --- branches/2017Q2/www/firefox/distinfo Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/www/firefox/distinfo Thu Apr 20 01:34:56 2017 (r438918) @@ -1,3 +1,3 @@ -TIMESTAMP = 1490348850 -SHA256 (firefox-52.0.2.source.tar.xz) = 2927a9a097be69338ed2a4aa94f063669e447e59fbcd28da76c7bb180ed16230 -SIZE (firefox-52.0.2.source.tar.xz) = 211407880 +TIMESTAMP = 1492149930 +SHA256 (firefox-53.0.source.tar.xz) = 4ed1b23ea7c08f81a08817ddf3b4f06849e01420ee074008b6f390366e95b7d0 +SIZE (firefox-53.0.source.tar.xz) = 213676692 Modified: branches/2017Q2/www/firefox/files/patch-bug1021761 ============================================================================== --- branches/2017Q2/www/firefox/files/patch-bug1021761 Thu Apr 20 01:22:59 2017 (r438917) +++ branches/2017Q2/www/firefox/files/patch-bug1021761 Thu Apr 20 01:34:56 2017 (r438918) @@ -1,20 +1,20 @@ diff --git build/moz.configure/old.configure build/moz.configure/old.configure -index b95dd2b..4cbefd5 100644 +index cd6c37cf4c7c..e98dc7973a6a 100644 --- build/moz.configure/old.configure +++ build/moz.configure/old.configure -@@ -305,6 +305,7 @@ def old_configure_options(*options): +@@ -275,6 +275,7 @@ def old_configure_options(*options): '--with-nspr-prefix', '--with-nss-exec-prefix', '--with-nss-prefix', + '--with-oss', '--with-pthreads', '--with-qemu-exe', - '--with-servo', -diff --git old-configure.in configure.in -index 48e60c0..ec08417 100644 + '--with-sixgill', +diff --git old-configure.in old-configure.in +index dff46614635e..dbbfdb76ab78 100644 --- old-configure.in +++ old-configure.in -@@ -5591,6 +5591,67 @@ fi +@@ -3128,6 +3128,67 @@ AC_DEFINE(MOZ_WEBM_ENCODER) AC_SUBST(MOZ_WEBM_ENCODER) dnl ================================== @@ -82,32 +82,49 @@ index 48e60c0..ec08417 100644 dnl = Check alsa availability on Linux dnl ================================== +diff --git dom/media/CubebUtils.cpp dom/media/CubebUtils.cpp +index e10e07e06ade..1fd561bea113 100644 +--- dom/media/CubebUtils.cpp ++++ dom/media/CubebUtils.cpp +@@ -71,7 +71,8 @@ const char* AUDIOSTREAM_BACKEND_ID_STR[] = { + "sndio", + "opensl", + "audiotrack", +- "kai" ++ "kai", ++ "oss", + }; + /* Index for failures to create an audio stream the first time. */ + const int CUBEB_BACKEND_INIT_FAILURE_FIRST = diff --git media/libcubeb/AUTHORS media/libcubeb/AUTHORS -index b441e8a..950d9e5 100644 +index 0fde65baad34..f8663c43b475 100644 --- media/libcubeb/AUTHORS +++ media/libcubeb/AUTHORS -@@ -4,3 +4,4 @@ Michael Wu +@@ -4,6 +4,7 @@ Michael Wu Paul Adenot David Richards Sebastien Alaiwan +Evgeniy Vodolazskiy + KO Myung-Hun + Haakon Sporsheim + Alex Chronopoulos diff --git media/libcubeb/src/cubeb.c media/libcubeb/src/cubeb.c -index 9c3adcc..45d765b 100644 +index 57bcb4c13652..68be024f4a68 100644 --- media/libcubeb/src/cubeb.c +++ media/libcubeb/src/cubeb.c -@@ -54,6 +54,9 @@ int opensl_init(cubeb ** context, char const * context_name); - #if defined(USE_AUDIOTRACK) - int audiotrack_init(cubeb ** context, char const * context_name); +@@ -54,6 +54,9 @@ int audiotrack_init(cubeb ** context, char const * context_name); + #if defined(USE_KAI) + int kai_init(cubeb ** context, char const * context_name); #endif +#if defined(USE_OSS) +int oss_init(cubeb ** context, char const * context_name); +#endif - int - validate_stream_params(cubeb_stream_params stream_params) -@@ -120,6 +123,9 @@ cubeb_init(cubeb ** context, char const * context_name) - #if defined(USE_AUDIOTRACK) - audiotrack_init, + static int + validate_stream_params(cubeb_stream_params * input_stream_params, +@@ -138,6 +141,9 @@ cubeb_init(cubeb ** context, char const * context_name) + #if defined(USE_KAI) + kai_init, #endif +#if defined(USE_OSS) + oss_init, @@ -116,10 +133,10 @@ index 9c3adcc..45d765b 100644 int i; diff --git media/libcubeb/src/cubeb_alsa.c media/libcubeb/src/cubeb_alsa.c -index a962553..1f780f4 100644 +index 05ad27fef53b..3ea78e994f59 100644 --- media/libcubeb/src/cubeb_alsa.c +++ media/libcubeb/src/cubeb_alsa.c -@@ -11,6 +11,7 @@ +@@ -12,6 +12,7 @@ #include #include #include @@ -127,7 +144,7 @@ index a962553..1f780f4 100644 #include #include #include -@@ -24,6 +25,50 @@ +@@ -25,6 +26,52 @@ #define ALSA_PA_PLUGIN "ALSA <-> PulseAudio PCM I/O Plugin" @@ -167,8 +184,10 @@ index a962553..1f780f4 100644 +MAKE_TYPEDEF(snd_pcm_poll_descriptors); +MAKE_TYPEDEF(snd_pcm_poll_descriptors_count); +MAKE_TYPEDEF(snd_pcm_poll_descriptors_revents); ++MAKE_TYPEDEF(snd_pcm_readi); +MAKE_TYPEDEF(snd_pcm_recover); +MAKE_TYPEDEF(snd_pcm_set_params); ++MAKE_TYPEDEF(snd_pcm_start); +MAKE_TYPEDEF(snd_pcm_state); +MAKE_TYPEDEF(snd_pcm_writei); + @@ -178,7 +197,7 @@ index a962553..1f780f4 100644 /* ALSA is not thread-safe. snd_pcm_t instances are individually protected by the owning cubeb_stream's mutex. snd_pcm_t creation and destruction is not thread-safe until ALSA 1.0.24 (see alsa-lib.git commit 91c9c8f1), -@@ -64,6 +109,8 @@ struct cubeb { +@@ -65,6 +112,8 @@ struct cubeb { workaround is not required. */ snd_config_t * local_config; int is_pa; @@ -187,53 +206,85 @@ index a962553..1f780f4 100644 }; enum stream_state { -@@ -260,10 +307,10 @@ alsa_refill_stream(cubeb_stream * stm) +@@ -243,8 +292,8 @@ set_timeout(struct timeval * timeout, unsigned int ms) + static void + stream_buffer_decrement(cubeb_stream * stm, long count) + { +- char * bufremains = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, count); +- memmove(stm->buffer, bufremains, snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes - count)); ++ char * bufremains = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, count); ++ memmove(stm->buffer, bufremains, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes - count)); + stm->bufframes -= count; + } - pthread_mutex_lock(&stm->mutex); +@@ -276,9 +325,9 @@ alsa_process_stream(cubeb_stream * stm) + /* Call _poll_descriptors_revents() even if we don't use it + to let underlying plugins clear null events. Otherwise poll() + may wake up again and again, producing unnecessary CPU usage. */ +- snd_pcm_poll_descriptors_revents(stm->pcm, stm->fds, stm->nfds, &revents); ++ WRAP(snd_pcm_poll_descriptors_revents)(stm->pcm, stm->fds, stm->nfds, &revents); - avail = snd_pcm_avail_update(stm->pcm); + avail = WRAP(snd_pcm_avail_update)(stm->pcm); - if (avail < 0) { -- snd_pcm_recover(stm->pcm, avail, 1); -- avail = snd_pcm_avail_update(stm->pcm); -+ WRAP(snd_pcm_recover)(stm->pcm, avail, 1); -+ avail = WRAP(snd_pcm_avail_update)(stm->pcm); - } - /* Failed to recover from an xrun, this stream must be broken. */ -@@ -286,7 +333,7 @@ alsa_refill_stream(cubeb_stream * stm) - return RUNNING; - } + /* Got null event? Bail and wait for another wakeup. */ + if (avail == 0) { +@@ -301,7 +350,7 @@ alsa_process_stream(cubeb_stream * stm) + // TODO: should it be marked as DRAINING? + } -- p = calloc(1, snd_pcm_frames_to_bytes(stm->pcm, avail)); -+ p = calloc(1, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, avail)); - assert(p); +- got = snd_pcm_readi(stm->pcm, stm->buffer+stm->bufframes, avail); ++ got = WRAP(snd_pcm_readi)(stm->pcm, stm->buffer+stm->bufframes, avail); - pthread_mutex_unlock(&stm->mutex); -@@ -312,10 +359,10 @@ alsa_refill_stream(cubeb_stream * stm) - b[i] *= stm->volume; + if (got < 0) { + avail = got; // the error handler below will recover us +@@ -345,7 +394,7 @@ alsa_process_stream(cubeb_stream * stm) + (!stm->other_stream || stm->other_stream->bufframes > 0)) { + long got = avail - stm->bufframes; + void * other_buffer = stm->other_stream ? stm->other_stream->buffer : NULL; +- char * buftail = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes); ++ char * buftail = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes); + + /* Correct read size to the other stream available frames */ + if (stm->other_stream && got > stm->other_stream->bufframes) { +@@ -372,8 +421,8 @@ alsa_process_stream(cubeb_stream * stm) + long drain_frames = avail - stm->bufframes; + double drain_time = (double) drain_frames / stm->params.rate; + +- char * buftail = stm->buffer + snd_pcm_frames_to_bytes(stm->pcm, stm->bufframes); +- memset(buftail, 0, snd_pcm_frames_to_bytes(stm->pcm, drain_frames)); ++ char * buftail = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes); ++ memset(buftail, 0, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, drain_frames)); + stm->bufframes = avail; + + /* Mark as draining, unless we're waiting for capture */ +@@ -400,7 +449,7 @@ alsa_process_stream(cubeb_stream * stm) } } -- wrote = snd_pcm_writei(stm->pcm, p, got); -+ wrote = WRAP(snd_pcm_writei)(stm->pcm, p, got); + +- wrote = snd_pcm_writei(stm->pcm, stm->buffer, avail); ++ wrote = WRAP(snd_pcm_writei)(stm->pcm, stm->buffer, avail); if (wrote < 0) { -- snd_pcm_recover(stm->pcm, wrote, 1); -- wrote = snd_pcm_writei(stm->pcm, p, got); -+ WRAP(snd_pcm_recover)(stm->pcm, wrote, 1); -+ wrote = WRAP(snd_pcm_writei)(stm->pcm, p, got); - } - assert(wrote >= 0 && wrote == got); - stm->write_position += wrote; -@@ -342,7 +389,7 @@ alsa_refill_stream(cubeb_stream * stm) - - /* Fill the remaining buffer with silence to guarantee one full period - has been written. */ -- snd_pcm_writei(stm->pcm, (char *) p + got, avail - got); -+ WRAP(snd_pcm_writei)(stm->pcm, (char *) p + got, avail - got); + avail = wrote; // the error handler below will recover us + } else { +@@ -413,13 +462,13 @@ alsa_process_stream(cubeb_stream * stm) - set_timeout(&stm->drain_timeout, buffer_time * 1000); + /* Got some error? Let's try to recover the stream. */ + if (avail < 0) { +- avail = snd_pcm_recover(stm->pcm, avail, 0); ++ avail = WRAP(snd_pcm_recover)(stm->pcm, avail, 0); + + /* Capture pcm must be started after initial setup/recover */ + if (avail >= 0 && + stm->stream_type == SND_PCM_STREAM_CAPTURE && +- snd_pcm_state(stm->pcm) == SND_PCM_STATE_PREPARED) { +- avail = snd_pcm_start(stm->pcm); ++ WRAP(snd_pcm_state)(stm->pcm) == SND_PCM_STATE_PREPARED) { ++ avail = WRAP(snd_pcm_start)(stm->pcm); + } + } -@@ -453,26 +500,26 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) +@@ -535,26 +584,26 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) slave_def = NULL; @@ -265,7 +316,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -481,7 +528,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) +@@ -563,7 +612,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) if (r < 0 || r > (int) sizeof(node_name)) { break; } @@ -274,7 +325,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -490,7 +537,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) +@@ -572,7 +621,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) } while (0); if (slave_def) { @@ -283,7 +334,7 @@ index a962553..1f780f4 100644 } return NULL; -@@ -513,22 +560,22 @@ init_local_config_with_workaround(char const * pcm_name) +@@ -595,22 +644,22 @@ init_local_config_with_workaround(char const * pcm_name) lconf = NULL; @@ -310,7 +361,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -537,7 +584,7 @@ init_local_config_with_workaround(char const * pcm_name) +@@ -619,7 +668,7 @@ init_local_config_with_workaround(char const * pcm_name) if (r < 0 || r > (int) sizeof(node_name)) { break; } @@ -319,7 +370,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -548,12 +595,12 @@ init_local_config_with_workaround(char const * pcm_name) +@@ -630,12 +679,12 @@ init_local_config_with_workaround(char const * pcm_name) } /* Fetch the PCM node's type, and bail out if it's not the PulseAudio plugin. */ @@ -334,7 +385,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -564,18 +611,18 @@ init_local_config_with_workaround(char const * pcm_name) +@@ -646,18 +695,18 @@ init_local_config_with_workaround(char const * pcm_name) /* Don't clobber an explicit existing handle_underrun value, set it only if it doesn't already exist. */ @@ -356,7 +407,7 @@ index a962553..1f780f4 100644 if (r < 0) { break; } -@@ -583,7 +630,7 @@ init_local_config_with_workaround(char const * pcm_name) +@@ -665,7 +714,7 @@ init_local_config_with_workaround(char const * pcm_name) return lconf; } while (0); @@ -365,19 +416,19 @@ index a962553..1f780f4 100644 return NULL; } -@@ -595,9 +642,9 @@ alsa_locked_pcm_open(snd_pcm_t ** pcm, snd_pcm_stream_t stream, snd_config_t * l +@@ -677,9 +726,9 @@ alsa_locked_pcm_open(snd_pcm_t ** pcm, char const * pcm_name, snd_pcm_stream_t s pthread_mutex_lock(&cubeb_alsa_mutex); if (local_config) { -- r = snd_pcm_open_lconf(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); -+ r = WRAP(snd_pcm_open_lconf)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); +- r = snd_pcm_open_lconf(pcm, pcm_name, stream, SND_PCM_NONBLOCK, local_config); ++ r = WRAP(snd_pcm_open_lconf)(pcm, pcm_name, stream, SND_PCM_NONBLOCK, local_config); } else { -- r = snd_pcm_open(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); -+ r = WRAP(snd_pcm_open)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); +- r = snd_pcm_open(pcm, pcm_name, stream, SND_PCM_NONBLOCK); ++ r = WRAP(snd_pcm_open)(pcm, pcm_name, stream, SND_PCM_NONBLOCK); } pthread_mutex_unlock(&cubeb_alsa_mutex); -@@ -610,7 +657,7 @@ alsa_locked_pcm_close(snd_pcm_t * pcm) +@@ -692,7 +741,7 @@ alsa_locked_pcm_close(snd_pcm_t * pcm) int r; pthread_mutex_lock(&cubeb_alsa_mutex); @@ -386,7 +437,7 @@ index a962553..1f780f4 100644 pthread_mutex_unlock(&cubeb_alsa_mutex); return r; -@@ -667,12 +714,65 @@ alsa_init(cubeb ** context, char const * context_name) +@@ -755,12 +804,65 @@ alsa_init(cubeb ** context, char const * context_name) pthread_attr_t attr; snd_pcm_t * dummy; @@ -453,7 +504,7 @@ index a962553..1f780f4 100644 cubeb_alsa_error_handler_set = 1; } pthread_mutex_unlock(&cubeb_alsa_mutex); -@@ -680,6 +780,8 @@ alsa_init(cubeb ** context, char const * context_name) +@@ -768,6 +870,8 @@ alsa_init(cubeb ** context, char const * context_name) ctx = calloc(1, sizeof(*ctx)); assert(ctx); @@ -462,7 +513,7 @@ index a962553..1f780f4 100644 ctx->ops = &alsa_ops; r = pthread_mutex_init(&ctx->mutex, NULL); -@@ -729,7 +831,7 @@ alsa_init(cubeb ** context, char const * context_name) +@@ -817,7 +921,7 @@ alsa_init(cubeb ** context, char const * context_name) config fails with EINVAL, the PA PCM is too old for this workaround. */ if (r == -EINVAL) { pthread_mutex_lock(&cubeb_alsa_mutex); @@ -471,7 +522,7 @@ index a962553..1f780f4 100644 pthread_mutex_unlock(&cubeb_alsa_mutex); ctx->local_config = NULL; } else if (r >= 0) { -@@ -768,9 +870,13 @@ alsa_destroy(cubeb * ctx) +@@ -857,9 +961,13 @@ alsa_destroy(cubeb * ctx) pthread_mutex_destroy(&ctx->mutex); free(ctx->fds); @@ -486,7 +537,7 @@ index a962553..1f780f4 100644 pthread_mutex_unlock(&cubeb_alsa_mutex); } -@@ -838,7 +944,7 @@ alsa_stream_init(cubeb * ctx, cubeb_stream ** stream, char const * stream_name, +@@ -939,7 +1047,7 @@ alsa_stream_init_single(cubeb * ctx, cubeb_stream ** stream, char const * stream return CUBEB_ERROR; } @@ -495,7 +546,7 @@ index a962553..1f780f4 100644 assert(r == 0); latency_us = latency_frames * 1e6 / stm->params.rate; -@@ -855,7 +961,7 @@ alsa_stream_init(cubeb * ctx, cubeb_stre +@@ -952,7 +1060,7 @@ alsa_stream_init_single(cubeb * ctx, cubeb_stream ** stream, char const * stream latency_us = latency_us < min_latency ? min_latency: latency_us; } @@ -504,7 +555,7 @@ index a962553..1f780f4 100644 stm->params.channels, stm->params.rate, 1, latency_us); if (r < 0) { -@@ -867,15 +973,15 @@ alsa_stream_init(cubeb * ctx, cubeb_stre +@@ -960,20 +1068,20 @@ alsa_stream_init_single(cubeb * ctx, cubeb_stream ** stream, char const * stream return CUBEB_ERROR_INVALID_FORMAT; } @@ -512,6 +563,12 @@ index a962553..1f780f4 100644 + r = WRAP(snd_pcm_get_params)(stm->pcm, &stm->buffer_size, &period_size); assert(r == 0); + /* Double internal buffer size to have enough space when waiting for the other side of duplex connection */ + stm->buffer_size *= 2; +- stm->buffer = calloc(1, snd_pcm_frames_to_bytes(stm->pcm, stm->buffer_size)); ++ stm->buffer = calloc(1, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->buffer_size)); + assert(stm->buffer); + - stm->nfds = snd_pcm_poll_descriptors_count(stm->pcm); + stm->nfds = WRAP(snd_pcm_poll_descriptors_count)(stm->pcm); assert(stm->nfds > 0); @@ -523,7 +580,7 @@ index a962553..1f780f4 100644 assert((nfds_t) r == stm->nfds); r = pthread_cond_init(&stm->cond, NULL); -@@ -895,7 +1001,7 @@ alsa_stream_destroy(cubeb_stream * stm) +@@ -1048,7 +1156,7 @@ alsa_stream_destroy(cubeb_stream * stm) pthread_mutex_lock(&stm->mutex); if (stm->pcm) { if (stm->state == DRAINING) { @@ -532,9 +589,9 @@ index a962553..1f780f4 100644 } alsa_locked_pcm_close(stm->pcm); stm->pcm = NULL; -@@ -938,12 +1044,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) - return CUBEB_ERROR; - } +@@ -1094,12 +1202,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) + + assert(stm); - r = snd_pcm_hw_params_any(stm->pcm, hw_params); + r = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params); @@ -547,7 +604,7 @@ index a962553..1f780f4 100644 if (r < 0) { return CUBEB_ERROR; } -@@ -969,34 +1075,34 @@ alsa_get_preferred_sample_rate(cubeb * c +@@ -1120,34 +1228,34 @@ alsa_get_preferred_sample_rate(cubeb * ctx, uint32_t * rate) { /* get a pcm, disabling resampling, so we get a rate the * hardware/dmix/pulse/etc. supports. */ @@ -590,16 +647,21 @@ index a962553..1f780f4 100644 return CUBEB_OK; } -@@ -1013,7 +1119,7 @@ alsa_stream_start(cubeb_stream * stm) - ctx = stm->context; - +@@ -1180,10 +1288,10 @@ alsa_stream_start(cubeb_stream * stm) pthread_mutex_lock(&stm->mutex); + /* Capture pcm must be started after initial setup/recover */ + if (stm->stream_type == SND_PCM_STREAM_CAPTURE && +- snd_pcm_state(stm->pcm) == SND_PCM_STATE_PREPARED) { +- snd_pcm_start(stm->pcm); ++ WRAP(snd_pcm_state)(stm->pcm) == SND_PCM_STATE_PREPARED) { ++ WRAP(snd_pcm_start)(stm->pcm); + } - snd_pcm_pause(stm->pcm, 0); + WRAP(snd_pcm_pause)(stm->pcm, 0); gettimeofday(&stm->last_activity, NULL); pthread_mutex_unlock(&stm->mutex); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***