aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mk/Uses/gecko.mk4
-rw-r--r--mail/linux-thunderbird/Makefile2
-rw-r--r--mail/linux-thunderbird/distinfo4
-rw-r--r--mail/thunderbird-i18n/Makefile2
-rw-r--r--mail/thunderbird-i18n/distinfo220
-rw-r--r--mail/thunderbird/Makefile5
-rw-r--r--mail/thunderbird/distinfo4
-rw-r--r--multimedia/gmp-api/Makefile4
-rw-r--r--multimedia/gmp-api/distinfo4
-rw-r--r--multimedia/openh264/Makefile1
-rw-r--r--www/firefox-esr-i18n/Makefile2
-rw-r--r--www/firefox-esr-i18n/distinfo356
-rw-r--r--www/firefox-esr/Makefile2
-rw-r--r--www/firefox-esr/distinfo4
-rw-r--r--www/firefox-i18n/Makefile4
-rw-r--r--www/firefox-i18n/distinfo352
-rw-r--r--www/firefox/Makefile6
-rw-r--r--www/firefox/distinfo4
-rw-r--r--www/firefox/files/patch-bug102176140
-rw-r--r--www/firefox/files/patch-bug1073117728
-rw-r--r--www/firefox/files/patch-bug110158282
-rw-r--r--www/firefox/files/patch-bug110385842
-rw-r--r--www/firefox/files/patch-bug112816128
-rw-r--r--www/firefox/files/patch-bug1138845134
-rw-r--r--www/firefox/files/patch-bug114368646
-rw-r--r--www/firefox/files/patch-bug114464333
-rw-r--r--www/firefox/files/patch-bug77971312
-rw-r--r--www/firefox/files/patch-bug89912698
-rw-r--r--www/firefox/files/patch-system-openh264166
-rw-r--r--www/firefox/files/patch-z-bug51742225
-rw-r--r--www/libxul/Makefile2
-rw-r--r--www/libxul/distinfo4
-rw-r--r--www/linux-firefox/Makefile2
-rw-r--r--www/linux-firefox/distinfo4
34 files changed, 1328 insertions, 1098 deletions
diff --git a/Mk/Uses/gecko.mk b/Mk/Uses/gecko.mk
index c18d240625b0..41625b4e26c2 100644
--- a/Mk/Uses/gecko.mk
+++ b/Mk/Uses/gecko.mk
@@ -37,12 +37,12 @@ RUN_DEPENDS+= libxul>=31:${PORTSDIR}/www/libxul
.elif ${gecko_ARGS:Mfirefox}
_GECKO_DEFAULT_VERSION= 31
-_GECKO_VERSIONS= 31 36
+_GECKO_VERSIONS= 31 37
_GECKO_TYPE= firefox
# Dependence lines for different Firefox versions
31_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox-esr
-36_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox
+37_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox
.if exists(${LOCALBASE}/bin/firefox)
_GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null
diff --git a/mail/linux-thunderbird/Makefile b/mail/linux-thunderbird/Makefile
index e3b4f7dd70ec..76f64e52f3ca 100644
--- a/mail/linux-thunderbird/Makefile
+++ b/mail/linux-thunderbird/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= thunderbird
-DISTVERSION= 31.5.0
+DISTVERSION= 31.6.0
CATEGORIES= mail news net-im ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/mail/linux-thunderbird/distinfo b/mail/linux-thunderbird/distinfo
index f2985343f6e8..e003c1ae8a10 100644
--- a/mail/linux-thunderbird/distinfo
+++ b/mail/linux-thunderbird/distinfo
@@ -1,5 +1,5 @@
-SHA256 (thunderbird-31.5.0.tar.bz2) = c4a1e9865e756a09383e110f8f81a229e49fcec04012de80856ce454ed6e41f7
-SIZE (thunderbird-31.5.0.tar.bz2) = 36874681
+SHA256 (thunderbird-31.6.0.tar.bz2) = d0591c60be1c59f37e713c8b7c818f0b3992bcafd33e9fc3f179509bcf35ad3f
+SIZE (thunderbird-31.6.0.tar.bz2) = 36878937
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b
diff --git a/mail/thunderbird-i18n/Makefile b/mail/thunderbird-i18n/Makefile
index 2b735fb9ea6e..f38c272a5497 100644
--- a/mail/thunderbird-i18n/Makefile
+++ b/mail/thunderbird-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= thunderbird-i18n
-PORTVERSION= 31.5.0
+PORTVERSION= 31.6.0
CATEGORIES= mail news net-im
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}/linux-i686/xpi
PKGNAMEPREFIX=
diff --git a/mail/thunderbird-i18n/distinfo b/mail/thunderbird-i18n/distinfo
index 9b94cee5701a..467e81585c5c 100644
--- a/mail/thunderbird-i18n/distinfo
+++ b/mail/thunderbird-i18n/distinfo
@@ -1,110 +1,110 @@
-SHA256 (xpi/thunderbird-i18n-31.5.0/ar.xpi) = 80b83ce312ed5616edc61b34604d4991ed1e2179f067336d019b64e32a929530
-SIZE (xpi/thunderbird-i18n-31.5.0/ar.xpi) = 472812
-SHA256 (xpi/thunderbird-i18n-31.5.0/ast.xpi) = 5e04389beb3b7a8fe8d910e52d6683104db2a937746c7db829d6e4ff6c8bab9d
-SIZE (xpi/thunderbird-i18n-31.5.0/ast.xpi) = 393049
-SHA256 (xpi/thunderbird-i18n-31.5.0/be.xpi) = a7db2f7a89632a0e55b650dc08b957bc678445db5fb807b029cc7f330651ff28
-SIZE (xpi/thunderbird-i18n-31.5.0/be.xpi) = 427488
-SHA256 (xpi/thunderbird-i18n-31.5.0/bg.xpi) = 1ea991edf2e89421e1f6de27538610be53c61190fc24d62ae181677e904d25dd
-SIZE (xpi/thunderbird-i18n-31.5.0/bg.xpi) = 493734
-SHA256 (xpi/thunderbird-i18n-31.5.0/bn-BD.xpi) = e0e1249d2a82c5a52f9b11dc5b4c64dd3204c07feacd431db6fcb31678604f93
-SIZE (xpi/thunderbird-i18n-31.5.0/bn-BD.xpi) = 555613
-SHA256 (xpi/thunderbird-i18n-31.5.0/br.xpi) = e62d04221c7352c833da0df59a44ea13aa9bb30654a8d745760b0e1a3f42689a
-SIZE (xpi/thunderbird-i18n-31.5.0/br.xpi) = 441444
-SHA256 (xpi/thunderbird-i18n-31.5.0/ca.xpi) = b3bff4b5595a3427c4ef31ba27fcfef64839bcbddf37b62d2f04f35c31e3889a
-SIZE (xpi/thunderbird-i18n-31.5.0/ca.xpi) = 441713
-SHA256 (xpi/thunderbird-i18n-31.5.0/cs.xpi) = cb84334c881ba9444553b334c6cd6e6541c71bd432c8bff46014603a70e10ec2
-SIZE (xpi/thunderbird-i18n-31.5.0/cs.xpi) = 444701
-SHA256 (xpi/thunderbird-i18n-31.5.0/da.xpi) = 284e99c29e42d02c79638c9483aa0b8cc008b46a53da11865f8da33506c46b6b
-SIZE (xpi/thunderbird-i18n-31.5.0/da.xpi) = 422051
-SHA256 (xpi/thunderbird-i18n-31.5.0/de.xpi) = a55c0d175e08ce74aa94b9f703c89079aa64996e605a34d061dd775fb8d3fea5
-SIZE (xpi/thunderbird-i18n-31.5.0/de.xpi) = 424665
-SHA256 (xpi/thunderbird-i18n-31.5.0/el.xpi) = 46870a4296ad1f1c1871034bbd3afa21f345f32c2970960ffff0f836d847cd69
-SIZE (xpi/thunderbird-i18n-31.5.0/el.xpi) = 484855
-SHA256 (xpi/thunderbird-i18n-31.5.0/en-GB.xpi) = c92104ae4cd34fb8f545d4c3a5a39bc3caea50d4729d3689859b84a49b187c06
-SIZE (xpi/thunderbird-i18n-31.5.0/en-GB.xpi) = 412515
-SHA256 (xpi/thunderbird-i18n-31.5.0/en-US.xpi) = 51564b06ba20565fbe98dfe1047c914c55fcb6f621f9f6fdbfd76d4167a4ebe5
-SIZE (xpi/thunderbird-i18n-31.5.0/en-US.xpi) = 413660
-SHA256 (xpi/thunderbird-i18n-31.5.0/es-AR.xpi) = ef962dfff8cc1f77506e1ac9f852cd314eaf11e017e0a46a8f4ea4de53f9bf21
-SIZE (xpi/thunderbird-i18n-31.5.0/es-AR.xpi) = 438531
-SHA256 (xpi/thunderbird-i18n-31.5.0/es-ES.xpi) = 6dd729d5d718a6b4c5d542b37e3876e3523fdf21953224c9eb39eb9efd5f4b1d
-SIZE (xpi/thunderbird-i18n-31.5.0/es-ES.xpi) = 374979
-SHA256 (xpi/thunderbird-i18n-31.5.0/et.xpi) = 43d89ed6ca9df9e0d008193ff9e40cc95bd95831d64e163f72a81c2efdfa7ad5
-SIZE (xpi/thunderbird-i18n-31.5.0/et.xpi) = 434364
-SHA256 (xpi/thunderbird-i18n-31.5.0/eu.xpi) = a7c6a4c165ad6f2d1f175527d5f875554fa399a6d6889236ffed493077bbc6e0
-SIZE (xpi/thunderbird-i18n-31.5.0/eu.xpi) = 431448
-SHA256 (xpi/thunderbird-i18n-31.5.0/fi.xpi) = b35caace844de02426c23f9e87b8f9651215d80d95f45bb13a2f5002d612204d
-SIZE (xpi/thunderbird-i18n-31.5.0/fi.xpi) = 435632
-SHA256 (xpi/thunderbird-i18n-31.5.0/fr.xpi) = 4712f3ed3edbbc4b14f4dd50e1402be4cb8dfcdd965c67f8d3186c391702e0ae
-SIZE (xpi/thunderbird-i18n-31.5.0/fr.xpi) = 444144
-SHA256 (xpi/thunderbird-i18n-31.5.0/fy-NL.xpi) = bba975b7a3783432d46017fa650cffdff40b2c28229db24f1f4b5d0a73fc0a77
-SIZE (xpi/thunderbird-i18n-31.5.0/fy-NL.xpi) = 438545
-SHA256 (xpi/thunderbird-i18n-31.5.0/ga-IE.xpi) = b115d881b42e94c6c2357e884c9b943574830ff150a75435a5e80130adc77304
-SIZE (xpi/thunderbird-i18n-31.5.0/ga-IE.xpi) = 449362
-SHA256 (xpi/thunderbird-i18n-31.5.0/gd.xpi) = 9943a52c4c3843b1422f9deb566f04357bbba5a7f60c8ce587a6b46f177ac508
-SIZE (xpi/thunderbird-i18n-31.5.0/gd.xpi) = 453171
-SHA256 (xpi/thunderbird-i18n-31.5.0/gl.xpi) = 5e2564106632fa6c978345c59f87c93034061f1d2d8ad3f2558214b6056a37de
-SIZE (xpi/thunderbird-i18n-31.5.0/gl.xpi) = 446788
-SHA256 (xpi/thunderbird-i18n-31.5.0/he.xpi) = 1a6fc4ead76564ecd40dbafe42da5c0cf9ae487160db5da24a45d5cafa86afb1
-SIZE (xpi/thunderbird-i18n-31.5.0/he.xpi) = 476111
-SHA256 (xpi/thunderbird-i18n-31.5.0/hr.xpi) = d9758d7f3866155c29237fce8a59a5ab25ef7372f52a4abf802cdc68e9aa0735
-SIZE (xpi/thunderbird-i18n-31.5.0/hr.xpi) = 436980
-SHA256 (xpi/thunderbird-i18n-31.5.0/hu.xpi) = 95bbeadbfe9eef336ab446272029ec6ee909f590cffd84299b4d7ea8cd215408
-SIZE (xpi/thunderbird-i18n-31.5.0/hu.xpi) = 454542
-SHA256 (xpi/thunderbird-i18n-31.5.0/hy-AM.xpi) = 6f4157eb89931bf75f080791e456c45833ca81f12550bb1c93804be561e309f1
-SIZE (xpi/thunderbird-i18n-31.5.0/hy-AM.xpi) = 492765
-SHA256 (xpi/thunderbird-i18n-31.5.0/id.xpi) = 6e5015d1eb222a70e7aa9f0bca08eec99b81172a216fbba068450e02da681c17
-SIZE (xpi/thunderbird-i18n-31.5.0/id.xpi) = 475876
-SHA256 (xpi/thunderbird-i18n-31.5.0/is.xpi) = ef04dd0a3fe1c0e4edc39a447f561cffb6b962f3dc610ffcd0946c1d26904845
-SIZE (xpi/thunderbird-i18n-31.5.0/is.xpi) = 437959
-SHA256 (xpi/thunderbird-i18n-31.5.0/it.xpi) = 17a0b2c5a2cb1421ec0e73a21040fc18a961ba662508db10a9df19b8476a83ac
-SIZE (xpi/thunderbird-i18n-31.5.0/it.xpi) = 368001
-SHA256 (xpi/thunderbird-i18n-31.5.0/ja.xpi) = 4bb4ce66c270912d005227395c1959579d8bb8f4f8297f3078b3f0d25bcfa0d3
-SIZE (xpi/thunderbird-i18n-31.5.0/ja.xpi) = 489267
-SHA256 (xpi/thunderbird-i18n-31.5.0/ko.xpi) = 7a38503c3a9b8e5400dea6627728ded00a0557ae334e1107384559c42e1dec08
-SIZE (xpi/thunderbird-i18n-31.5.0/ko.xpi) = 448920
-SHA256 (xpi/thunderbird-i18n-31.5.0/lt.xpi) = 2417df06915b561cc020d2819a7025db605e5af46ccc1c143fa4d05ccade392b
-SIZE (xpi/thunderbird-i18n-31.5.0/lt.xpi) = 456351
-SHA256 (xpi/thunderbird-i18n-31.5.0/nb-NO.xpi) = a79569621cb322351152f4dea1607c9b37f50348a14114f9e61007ecae32288b
-SIZE (xpi/thunderbird-i18n-31.5.0/nb-NO.xpi) = 430942
-SHA256 (xpi/thunderbird-i18n-31.5.0/nl.xpi) = 011833942de32f1ddc54c5af9737267c88fd8f540c15cac117b495e056092c10
-SIZE (xpi/thunderbird-i18n-31.5.0/nl.xpi) = 431888
-SHA256 (xpi/thunderbird-i18n-31.5.0/nn-NO.xpi) = cc40effe5cdf84001f7128eb8490e4341dfb896c341bab7487acbfcef38c3747
-SIZE (xpi/thunderbird-i18n-31.5.0/nn-NO.xpi) = 433198
-SHA256 (xpi/thunderbird-i18n-31.5.0/pa-IN.xpi) = 5b5b5fd4429225671a02c6bd81441574013969eb09c82270ba84c6f196a82a03
-SIZE (xpi/thunderbird-i18n-31.5.0/pa-IN.xpi) = 525323
-SHA256 (xpi/thunderbird-i18n-31.5.0/pl.xpi) = f9929f9e7f59e58af8423b66a06577814740c1d25cad445132bbbce00f75ec0a
-SIZE (xpi/thunderbird-i18n-31.5.0/pl.xpi) = 410872
-SHA256 (xpi/thunderbird-i18n-31.5.0/pt-BR.xpi) = 9f3d7078b8e8266583042eb9329f9ac0253a6aa0478b8f61ab40e11414c4d2e1
-SIZE (xpi/thunderbird-i18n-31.5.0/pt-BR.xpi) = 450477
-SHA256 (xpi/thunderbird-i18n-31.5.0/pt-PT.xpi) = 6c77ef803b065be17f2089879d1bacf0e1fd12097ad55748da7d5cd870e2cd70
-SIZE (xpi/thunderbird-i18n-31.5.0/pt-PT.xpi) = 439604
-SHA256 (xpi/thunderbird-i18n-31.5.0/rm.xpi) = ad39f5df1f8038b80e575173f6e97cff72a926f41b974d008011f4b285f88730
-SIZE (xpi/thunderbird-i18n-31.5.0/rm.xpi) = 439185
-SHA256 (xpi/thunderbird-i18n-31.5.0/ro.xpi) = 7964ab86199c2b7d16d025eb4080db630ee9d7221c7637470d1f774279b69c85
-SIZE (xpi/thunderbird-i18n-31.5.0/ro.xpi) = 479749
-SHA256 (xpi/thunderbird-i18n-31.5.0/ru.xpi) = 6a75dea1bc33c492e8ec8b6a6dd783d2ca908f0f94d47474ddd96fd6b6116865
-SIZE (xpi/thunderbird-i18n-31.5.0/ru.xpi) = 436156
-SHA256 (xpi/thunderbird-i18n-31.5.0/si.xpi) = 4295a6f35fef93bd1c1b4b07d315ed45f92109c56e2cd1bfabb98b42b7d0e68b
-SIZE (xpi/thunderbird-i18n-31.5.0/si.xpi) = 528812
-SHA256 (xpi/thunderbird-i18n-31.5.0/sk.xpi) = b91dd4281edb18f64412c7b459df5afebb12acc5de89c0af26c5a453603d9a36
-SIZE (xpi/thunderbird-i18n-31.5.0/sk.xpi) = 452995
-SHA256 (xpi/thunderbird-i18n-31.5.0/sl.xpi) = aec21bd6f7f183dc7446ed24dda5c64ae7362c48f6d32ef3169cfc273ba4c45f
-SIZE (xpi/thunderbird-i18n-31.5.0/sl.xpi) = 433874
-SHA256 (xpi/thunderbird-i18n-31.5.0/sq.xpi) = 40658e0261e2eea88c2561435a721b221634d6d7b50293bec162f5db24ae6fde
-SIZE (xpi/thunderbird-i18n-31.5.0/sq.xpi) = 454694
-SHA256 (xpi/thunderbird-i18n-31.5.0/sr.xpi) = 3e9bd7a41b45a165518bfa773b96ccf56f8f6420d54164e51f3af44e3264ee0e
-SIZE (xpi/thunderbird-i18n-31.5.0/sr.xpi) = 537336
-SHA256 (xpi/thunderbird-i18n-31.5.0/sv-SE.xpi) = 34806febfad1cb915b7489d43e6ec10273aba1458d922b03d38995669f85283f
-SIZE (xpi/thunderbird-i18n-31.5.0/sv-SE.xpi) = 436105
-SHA256 (xpi/thunderbird-i18n-31.5.0/ta-LK.xpi) = d9ecbfde0508d1fe70a541f30edebea6d60f952b3f102c65c235ac9ed2274a28
-SIZE (xpi/thunderbird-i18n-31.5.0/ta-LK.xpi) = 553508
-SHA256 (xpi/thunderbird-i18n-31.5.0/tr.xpi) = 165d89d6c12fc99f2de8f83c4ea39f4866b2b65ded899598fd072b909c9aee22
-SIZE (xpi/thunderbird-i18n-31.5.0/tr.xpi) = 457360
-SHA256 (xpi/thunderbird-i18n-31.5.0/uk.xpi) = 8841b2b381fdd345cd0b19fc2feead78028d5cc118fda6ffb52539b7e6f7c8b3
-SIZE (xpi/thunderbird-i18n-31.5.0/uk.xpi) = 499656
-SHA256 (xpi/thunderbird-i18n-31.5.0/vi.xpi) = 0b4049bbb4ac58833d3ae35750ece29c4893554afcb9622afbe1d64345e6378e
-SIZE (xpi/thunderbird-i18n-31.5.0/vi.xpi) = 513835
-SHA256 (xpi/thunderbird-i18n-31.5.0/zh-CN.xpi) = 38a92f434e1d70abd474be1fa449bbb0c19ccad91ef440a5d8e8803e98bda5d3
-SIZE (xpi/thunderbird-i18n-31.5.0/zh-CN.xpi) = 462668
-SHA256 (xpi/thunderbird-i18n-31.5.0/zh-TW.xpi) = c81b39d164cc196e99ae0526c124647ea6de6574b415e0dcd8299f76c8240c84
-SIZE (xpi/thunderbird-i18n-31.5.0/zh-TW.xpi) = 463408
+SHA256 (xpi/thunderbird-i18n-31.6.0/ar.xpi) = 469ba3e8822685b1b16131da5c50dd3b7372cc92a932f61569d9734daaea2eac
+SIZE (xpi/thunderbird-i18n-31.6.0/ar.xpi) = 472812
+SHA256 (xpi/thunderbird-i18n-31.6.0/ast.xpi) = 26bccf23d234e2ecef00733909bb432969c72cb74527adecc2ae59022b43ca97
+SIZE (xpi/thunderbird-i18n-31.6.0/ast.xpi) = 393049
+SHA256 (xpi/thunderbird-i18n-31.6.0/be.xpi) = 95540e5f60de453d2281951beb7df8bd78ca91bc88437fcbbc6bb16844d31b90
+SIZE (xpi/thunderbird-i18n-31.6.0/be.xpi) = 427488
+SHA256 (xpi/thunderbird-i18n-31.6.0/bg.xpi) = d7e08d395b768f1de63ced97518f8dbf6a747273264fae3d241cc0ae17a3e867
+SIZE (xpi/thunderbird-i18n-31.6.0/bg.xpi) = 493733
+SHA256 (xpi/thunderbird-i18n-31.6.0/bn-BD.xpi) = 2e69e0b9d95a4018d658cf831dcfd7c8897534ce078d492a96a215dee9bb940c
+SIZE (xpi/thunderbird-i18n-31.6.0/bn-BD.xpi) = 555613
+SHA256 (xpi/thunderbird-i18n-31.6.0/br.xpi) = 4b7d3ef6c5df11058772483fe7945c3691e2cd8e8236963f4d19b23b4bb1f329
+SIZE (xpi/thunderbird-i18n-31.6.0/br.xpi) = 441445
+SHA256 (xpi/thunderbird-i18n-31.6.0/ca.xpi) = 735bf46013112a854b3f283714bb0847c475cc068e63c6a3485f1631feae27bf
+SIZE (xpi/thunderbird-i18n-31.6.0/ca.xpi) = 441713
+SHA256 (xpi/thunderbird-i18n-31.6.0/cs.xpi) = 23619105a28386b9cd927f65fd59223a1378fc09134b00864cd21d119c762857
+SIZE (xpi/thunderbird-i18n-31.6.0/cs.xpi) = 444701
+SHA256 (xpi/thunderbird-i18n-31.6.0/da.xpi) = 117129fbc2fdd5e6572942b600b1049189a7fd91852011c5c92c44bf042362a3
+SIZE (xpi/thunderbird-i18n-31.6.0/da.xpi) = 422052
+SHA256 (xpi/thunderbird-i18n-31.6.0/de.xpi) = 2d181ce84bf62a45118941f52e70a5987c610356dca4df48e0e88fc95b45da37
+SIZE (xpi/thunderbird-i18n-31.6.0/de.xpi) = 424665
+SHA256 (xpi/thunderbird-i18n-31.6.0/el.xpi) = 90608f577f5ef31c9003b6e2ea937dbf0435f3c06aa1eba561bbf8309568c90c
+SIZE (xpi/thunderbird-i18n-31.6.0/el.xpi) = 484856
+SHA256 (xpi/thunderbird-i18n-31.6.0/en-GB.xpi) = fde93bbf9ff06e121870bf496418bc1703e0a2d0c5f27bcc3d130d2304921f67
+SIZE (xpi/thunderbird-i18n-31.6.0/en-GB.xpi) = 412515
+SHA256 (xpi/thunderbird-i18n-31.6.0/en-US.xpi) = 11e68ba7462dc8df41a43a1e4c04f6865c8f46e96295abfd6366559204c89cd9
+SIZE (xpi/thunderbird-i18n-31.6.0/en-US.xpi) = 413660
+SHA256 (xpi/thunderbird-i18n-31.6.0/es-AR.xpi) = b600ba8e2543eedc1833f6b936a70f25b9553dbc6835879d65dc14749e6db4fb
+SIZE (xpi/thunderbird-i18n-31.6.0/es-AR.xpi) = 438531
+SHA256 (xpi/thunderbird-i18n-31.6.0/es-ES.xpi) = 9017824378160bfe10d41bb2decbbc5a60a4db9199bff614c2b63cf40b3d310d
+SIZE (xpi/thunderbird-i18n-31.6.0/es-ES.xpi) = 374979
+SHA256 (xpi/thunderbird-i18n-31.6.0/et.xpi) = d81f38f094ad0b962bc8fa6e11b57031748f3ca52c0ae0e335d704210e1f63f0
+SIZE (xpi/thunderbird-i18n-31.6.0/et.xpi) = 434364
+SHA256 (xpi/thunderbird-i18n-31.6.0/eu.xpi) = a4f47a340b5623317756cd861705e96aba343a3175bc738bfdc72634859deed2
+SIZE (xpi/thunderbird-i18n-31.6.0/eu.xpi) = 431449
+SHA256 (xpi/thunderbird-i18n-31.6.0/fi.xpi) = 3a66f399789c0375d5e908a23ab306fb64eab8a4c35588112b0c83e027635987
+SIZE (xpi/thunderbird-i18n-31.6.0/fi.xpi) = 435632
+SHA256 (xpi/thunderbird-i18n-31.6.0/fr.xpi) = 38f52c3ae85908354964f816f3e83b12c26899b3112cd3de6d7c2672a35e86dc
+SIZE (xpi/thunderbird-i18n-31.6.0/fr.xpi) = 444144
+SHA256 (xpi/thunderbird-i18n-31.6.0/fy-NL.xpi) = 0deaef241661c4fb34b159528297b7a922a5bacc103fd62e6d5fa73cb129a2d3
+SIZE (xpi/thunderbird-i18n-31.6.0/fy-NL.xpi) = 438544
+SHA256 (xpi/thunderbird-i18n-31.6.0/ga-IE.xpi) = 628c3682e167f87b50aed76ac02fe5e069015fb850eabdc79bfe41d0d2b239e0
+SIZE (xpi/thunderbird-i18n-31.6.0/ga-IE.xpi) = 449362
+SHA256 (xpi/thunderbird-i18n-31.6.0/gd.xpi) = 41cd7af4039f99ba71d30c61764c2b5079c5b23aa6d8bbeb1d7eb5ba76d9915a
+SIZE (xpi/thunderbird-i18n-31.6.0/gd.xpi) = 453172
+SHA256 (xpi/thunderbird-i18n-31.6.0/gl.xpi) = 80788599aba0058d055e14c6931adfc5c3fcafdab2b3f82c765e82ba85cd6618
+SIZE (xpi/thunderbird-i18n-31.6.0/gl.xpi) = 446788
+SHA256 (xpi/thunderbird-i18n-31.6.0/he.xpi) = f2b3dc16e00792dcb23da705428ac694510df99a2365eb92587d814015f91c33
+SIZE (xpi/thunderbird-i18n-31.6.0/he.xpi) = 476111
+SHA256 (xpi/thunderbird-i18n-31.6.0/hr.xpi) = e866fdc131fdb5e384aa3905f41bea5498941a6cbfa73af9c933e3368869c30b
+SIZE (xpi/thunderbird-i18n-31.6.0/hr.xpi) = 436980
+SHA256 (xpi/thunderbird-i18n-31.6.0/hu.xpi) = 975596a745b826d545ab70c000663a3464b22edefb23e97a128d1d8f3c1c3020
+SIZE (xpi/thunderbird-i18n-31.6.0/hu.xpi) = 454542
+SHA256 (xpi/thunderbird-i18n-31.6.0/hy-AM.xpi) = 99288ff622c443eb2701c5cc041705ecbb02afd99d59276c0aea04147f955335
+SIZE (xpi/thunderbird-i18n-31.6.0/hy-AM.xpi) = 492766
+SHA256 (xpi/thunderbird-i18n-31.6.0/id.xpi) = 746d6a546528e49a5f66a88704a9adfb2d6605dd1148de42ec1ce8427190176d
+SIZE (xpi/thunderbird-i18n-31.6.0/id.xpi) = 475876
+SHA256 (xpi/thunderbird-i18n-31.6.0/is.xpi) = 68ba2fd9b48b844d5d3470986ed344917a8021794fe67108c626e5945a2a1e7f
+SIZE (xpi/thunderbird-i18n-31.6.0/is.xpi) = 437959
+SHA256 (xpi/thunderbird-i18n-31.6.0/it.xpi) = 48adc76231ef558458a23d91c1055e22b3100412499344cb2f5f17ebbed96c88
+SIZE (xpi/thunderbird-i18n-31.6.0/it.xpi) = 368001
+SHA256 (xpi/thunderbird-i18n-31.6.0/ja.xpi) = 282169e68a88f96299feaf19cf8c779817c29fa0f9e381691b912988562e3009
+SIZE (xpi/thunderbird-i18n-31.6.0/ja.xpi) = 489267
+SHA256 (xpi/thunderbird-i18n-31.6.0/ko.xpi) = f42996017694aa23dfa6d785f165461347cbefc1841ba841d403cc9a7e6cd9cd
+SIZE (xpi/thunderbird-i18n-31.6.0/ko.xpi) = 448920
+SHA256 (xpi/thunderbird-i18n-31.6.0/lt.xpi) = 71d61ba20fb60f7f57e0cc3633f6e4cdbff36fd5a55392646db97d162bd452f2
+SIZE (xpi/thunderbird-i18n-31.6.0/lt.xpi) = 456352
+SHA256 (xpi/thunderbird-i18n-31.6.0/nb-NO.xpi) = 7a135a00b3106249147d5d023e17710266c9f32b0e55496d59387571164db82d
+SIZE (xpi/thunderbird-i18n-31.6.0/nb-NO.xpi) = 430942
+SHA256 (xpi/thunderbird-i18n-31.6.0/nl.xpi) = ae50880cfada890136723afd10f7e4ff6edb958bc8cce8c34c9298d8e34d20d3
+SIZE (xpi/thunderbird-i18n-31.6.0/nl.xpi) = 431888
+SHA256 (xpi/thunderbird-i18n-31.6.0/nn-NO.xpi) = 1b6b140130026c86e2f9aacc10fa6e642cee186c67c2a23b350e9bfea3ac828e
+SIZE (xpi/thunderbird-i18n-31.6.0/nn-NO.xpi) = 433198
+SHA256 (xpi/thunderbird-i18n-31.6.0/pa-IN.xpi) = b4da0cd42307642492a73ef30e652394927530471b1d71897ce6fc28c53f25d9
+SIZE (xpi/thunderbird-i18n-31.6.0/pa-IN.xpi) = 525323
+SHA256 (xpi/thunderbird-i18n-31.6.0/pl.xpi) = ad3e92b8ec4caae1d2228e33e4c55ab46f7ece5eefb5ead17ff76c092fc75be3
+SIZE (xpi/thunderbird-i18n-31.6.0/pl.xpi) = 410872
+SHA256 (xpi/thunderbird-i18n-31.6.0/pt-BR.xpi) = 1a67a4855350a6e13ffcd15da4a546bd830bc4cdb6cc69e75f769c04415c9e45
+SIZE (xpi/thunderbird-i18n-31.6.0/pt-BR.xpi) = 450477
+SHA256 (xpi/thunderbird-i18n-31.6.0/pt-PT.xpi) = b3a9c93f19297092f77c3018ccff6b863c333fc60edcbfd7baa503d290cbb091
+SIZE (xpi/thunderbird-i18n-31.6.0/pt-PT.xpi) = 439605
+SHA256 (xpi/thunderbird-i18n-31.6.0/rm.xpi) = 3e511b47615ff491d99d524cdfea9aaf97ec6d2fa44080b32a512a7c8a9a54b9
+SIZE (xpi/thunderbird-i18n-31.6.0/rm.xpi) = 439185
+SHA256 (xpi/thunderbird-i18n-31.6.0/ro.xpi) = fbe0f58f8ad2bce7d9a589cdff6bd4f25661aaf8ee3984ea0ecb1390b21a89ff
+SIZE (xpi/thunderbird-i18n-31.6.0/ro.xpi) = 479749
+SHA256 (xpi/thunderbird-i18n-31.6.0/ru.xpi) = 0faa4cea2a9b11329f337c583f9660afd3b243560e6c46709b141192f1957b02
+SIZE (xpi/thunderbird-i18n-31.6.0/ru.xpi) = 436156
+SHA256 (xpi/thunderbird-i18n-31.6.0/si.xpi) = 2314272354b7eee77ad7ac35c76efcf4d72951062f9ec55ddce0fcb4ae69a6c6
+SIZE (xpi/thunderbird-i18n-31.6.0/si.xpi) = 528812
+SHA256 (xpi/thunderbird-i18n-31.6.0/sk.xpi) = 0597c8b782f7c5386e926a27798e7f35a39d623e8c3056b1e9a7ce2849268541
+SIZE (xpi/thunderbird-i18n-31.6.0/sk.xpi) = 452995
+SHA256 (xpi/thunderbird-i18n-31.6.0/sl.xpi) = 2f49d57813524da0e686587dc2a442eaec1ba90b53cab4294a99833ba62d8aed
+SIZE (xpi/thunderbird-i18n-31.6.0/sl.xpi) = 433874
+SHA256 (xpi/thunderbird-i18n-31.6.0/sq.xpi) = b2df645d03d2b103760a8372792183ad7202c96cbbcd00334ebf15c0532576d8
+SIZE (xpi/thunderbird-i18n-31.6.0/sq.xpi) = 454695
+SHA256 (xpi/thunderbird-i18n-31.6.0/sr.xpi) = 95a3053e4749dd6236e4aa9d23f0fac65151cfb494103c550ac79b644c3a14db
+SIZE (xpi/thunderbird-i18n-31.6.0/sr.xpi) = 537335
+SHA256 (xpi/thunderbird-i18n-31.6.0/sv-SE.xpi) = aac574c17163d1ba286677c696d654e667afe9d7eee48b89cf0cfdca86ccb03c
+SIZE (xpi/thunderbird-i18n-31.6.0/sv-SE.xpi) = 436106
+SHA256 (xpi/thunderbird-i18n-31.6.0/ta-LK.xpi) = 9134c27513ee9f4eb51a7b343624e73ba0e74f00372b3fe0dc31f317843da181
+SIZE (xpi/thunderbird-i18n-31.6.0/ta-LK.xpi) = 553509
+SHA256 (xpi/thunderbird-i18n-31.6.0/tr.xpi) = 4f82c2e827b5b5955e476cd92ea5ee3e6ded7b7d608dede7fadb04423704249a
+SIZE (xpi/thunderbird-i18n-31.6.0/tr.xpi) = 457360
+SHA256 (xpi/thunderbird-i18n-31.6.0/uk.xpi) = 2b53c55a0301cf5d5fa64473d1dc97706fef163d96d2af013a90b950fc4be0fd
+SIZE (xpi/thunderbird-i18n-31.6.0/uk.xpi) = 499656
+SHA256 (xpi/thunderbird-i18n-31.6.0/vi.xpi) = 9ff8daa9ee8fcbae042c582e8038505775c0bff64f02d5d482ad275928e3af3b
+SIZE (xpi/thunderbird-i18n-31.6.0/vi.xpi) = 513835
+SHA256 (xpi/thunderbird-i18n-31.6.0/zh-CN.xpi) = b2a613f62cb45b4c136cc402e7e54f1737358c63466944d4753b47e7b212e84e
+SIZE (xpi/thunderbird-i18n-31.6.0/zh-CN.xpi) = 462668
+SHA256 (xpi/thunderbird-i18n-31.6.0/zh-TW.xpi) = a424e49bb2fa28e4d87e94714d3076cd756760316a5499ae5e7d0cf3e7d50efc
+SIZE (xpi/thunderbird-i18n-31.6.0/zh-TW.xpi) = 463408
diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile
index faad79f9300c..4c91c1a10246 100644
--- a/mail/thunderbird/Makefile
+++ b/mail/thunderbird/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= thunderbird
-DISTVERSION= 31.5.0
-PORTREVISION= 2
+DISTVERSION= 31.6.0
CATEGORIES= mail news net-im ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/
@@ -33,7 +32,7 @@ BUILD_DEPENDS= nspr>=4.10.6:${PORTSDIR}/devel/nspr \
LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l
EM_VERSION= 1.8.1
-L_VERSION= 3.3.5
+L_VERSION= 3.3.6
SSP_UNSAFE= yes
USE_GECKO= gecko
diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo
index 5b6b3892e083..a6bc58d91e40 100644
--- a/mail/thunderbird/distinfo
+++ b/mail/thunderbird/distinfo
@@ -1,4 +1,4 @@
-SHA256 (thunderbird-31.5.0.source.tar.bz2) = 435719518dcf25fb3b810feefca489b92d30354d97836eab09cfdfd1c4b9139d
-SIZE (thunderbird-31.5.0.source.tar.bz2) = 171097061
+SHA256 (thunderbird-31.6.0.source.tar.bz2) = ccbf8cbb740bc1b30ecf4fe39aab226607f9a41e23a07e994c508a90e8b70508
+SIZE (thunderbird-31.6.0.source.tar.bz2) = 171089774
SHA256 (enigmail-1.8.1.tar.gz) = 15b621455fb945b0ff1a55b50bd75e8bacee8650246fb9cd683b55b8d17c6dbb
SIZE (enigmail-1.8.1.tar.gz) = 1592706
diff --git a/multimedia/gmp-api/Makefile b/multimedia/gmp-api/Makefile
index c90e76a84f50..5ec6fa3ae379 100644
--- a/multimedia/gmp-api/Makefile
+++ b/multimedia/gmp-api/Makefile
@@ -1,7 +1,7 @@
# $FreeBSD$
PORTNAME= gmp-api
-PORTVERSION= 35.0
+PORTVERSION= 38.0
CATEGORIES= multimedia
MAINTAINER= gecko@FreeBSD.org
@@ -13,7 +13,7 @@ USE_GITHUB= yes
GH_ACCOUNT= mozilla
GH_PROJECT= ${PORTNAME}
GH_TAGNAME= ${GH_COMMIT}
-GH_COMMIT= f582a56
+GH_COMMIT= 2b8954c
NO_BUILD= yes
NO_ARCH= yes
diff --git a/multimedia/gmp-api/distinfo b/multimedia/gmp-api/distinfo
index a1a5fef0755a..241441822d8c 100644
--- a/multimedia/gmp-api/distinfo
+++ b/multimedia/gmp-api/distinfo
@@ -1,2 +1,2 @@
-SHA256 (gmp-api-35.0.tar.gz) = 450c4d4b48cb525a62012ee470062918b6bdaa7e13200071159832cc7a5c91ec
-SIZE (gmp-api-35.0.tar.gz) = 14652
+SHA256 (gmp-api-38.0.tar.gz) = 93d39573d04b7b49c4a9a5cdf86021b770ed1860108cc2e2e04f782fe6438c30
+SIZE (gmp-api-38.0.tar.gz) = 16205
diff --git a/multimedia/openh264/Makefile b/multimedia/openh264/Makefile
index 89b281f74080..f426fa5cfb40 100644
--- a/multimedia/openh264/Makefile
+++ b/multimedia/openh264/Makefile
@@ -2,6 +2,7 @@
PORTNAME= openh264
PORTVERSION= 1.4.0
+PORTREVISION= 1
CATEGORIES= multimedia
MAINTAINER= gecko@FreeBSD.org
diff --git a/www/firefox-esr-i18n/Makefile b/www/firefox-esr-i18n/Makefile
index 47af60bcd59d..4bf035a635d0 100644
--- a/www/firefox-esr-i18n/Makefile
+++ b/www/firefox-esr-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-PORTVERSION= 31.5.3
+PORTVERSION= 31.6.0
CATEGORIES= www
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}esr/linux-i686/xpi
PKGNAMEPREFIX=
diff --git a/www/firefox-esr-i18n/distinfo b/www/firefox-esr-i18n/distinfo
index c129305e7b45..de5793c9197a 100644
--- a/www/firefox-esr-i18n/distinfo
+++ b/www/firefox-esr-i18n/distinfo
@@ -1,178 +1,178 @@
-SHA256 (xpi/firefox-31.5.3/ach.xpi) = 197d075d13b5601426ed6ccf7a385958e678362ca6395d48da5f1e50eb9899c2
-SIZE (xpi/firefox-31.5.3/ach.xpi) = 445326
-SHA256 (xpi/firefox-31.5.3/af.xpi) = 8a6ceb72e0f6b8f08067de07951841905697874922622e4c48b5c612b22162db
-SIZE (xpi/firefox-31.5.3/af.xpi) = 431089
-SHA256 (xpi/firefox-31.5.3/an.xpi) = 92a4c1a0651ebf3ac69ce803a914f4a9624361083a1ac335560dc6523ff7c2e1
-SIZE (xpi/firefox-31.5.3/an.xpi) = 407151
-SHA256 (xpi/firefox-31.5.3/ar.xpi) = 116e438d6ed31ae4388e29c602507f5bd30b6d8a3a162835d0d3b412e56b5f03
-SIZE (xpi/firefox-31.5.3/ar.xpi) = 459823
-SHA256 (xpi/firefox-31.5.3/as.xpi) = aac019e938411f07df8f09ef215871809e75ba580398c478d835896fb274b43f
-SIZE (xpi/firefox-31.5.3/as.xpi) = 448568
-SHA256 (xpi/firefox-31.5.3/ast.xpi) = f90c97ce4c2cb7822b23abfc2baa6fdc4f301d506d50a2b8ec0778ba9fa296d1
-SIZE (xpi/firefox-31.5.3/ast.xpi) = 352340
-SHA256 (xpi/firefox-31.5.3/be.xpi) = 5536a42649ba6125468051e7fb50fea0e791ae54411c3ca941ff8a818c30fe50
-SIZE (xpi/firefox-31.5.3/be.xpi) = 378668
-SHA256 (xpi/firefox-31.5.3/bg.xpi) = d9136407c1ce937cb0f9d406398f07102807c4336cb2e705060b35acab11b954
-SIZE (xpi/firefox-31.5.3/bg.xpi) = 438061
-SHA256 (xpi/firefox-31.5.3/bn-BD.xpi) = 8b8fa16e3d3d04d61cfa9778e261339c416da2c59b1ad45a34003036ac919f3f
-SIZE (xpi/firefox-31.5.3/bn-BD.xpi) = 472626
-SHA256 (xpi/firefox-31.5.3/bn-IN.xpi) = 2eb8cdc6fb23c515ab9bce3894d2d10efedcbd9dd09a95a4d55f2c9489784e0d
-SIZE (xpi/firefox-31.5.3/bn-IN.xpi) = 462592
-SHA256 (xpi/firefox-31.5.3/br.xpi) = d245ef7f92a3b055ebb870864b56f4987b9523c298f034c43883fee64a9ff413
-SIZE (xpi/firefox-31.5.3/br.xpi) = 389704
-SHA256 (xpi/firefox-31.5.3/bs.xpi) = 046a9595ae96032e64e2f59607adf74426034db034b097153ec1a03fda857e34
-SIZE (xpi/firefox-31.5.3/bs.xpi) = 429014
-SHA256 (xpi/firefox-31.5.3/ca.xpi) = cadd036f2b28a9f8e9057181524668d8983ef506788b3d12cb3dc83f121763b2
-SIZE (xpi/firefox-31.5.3/ca.xpi) = 403575
-SHA256 (xpi/firefox-31.5.3/cs.xpi) = 1da52b9bebb79975ff861295f0a709be9926d53f8c1e9a09c537ff478274c024
-SIZE (xpi/firefox-31.5.3/cs.xpi) = 390978
-SHA256 (xpi/firefox-31.5.3/csb.xpi) = 4d31dcfeeff943793a06c25f11838b2199edcfa841aa08553ef308832786b967
-SIZE (xpi/firefox-31.5.3/csb.xpi) = 383695
-SHA256 (xpi/firefox-31.5.3/cy.xpi) = 009b6ededd4ef71f43803da59eabefc34fe26338509a9a2d43130a690ce2085a
-SIZE (xpi/firefox-31.5.3/cy.xpi) = 390727
-SHA256 (xpi/firefox-31.5.3/da.xpi) = df506e2306b5e2b2c4c48c71d8cfaa70581c1abcc6e3cb1014669d48ab120052
-SIZE (xpi/firefox-31.5.3/da.xpi) = 397747
-SHA256 (xpi/firefox-31.5.3/de.xpi) = 2b3e0b142c7f7ac144d998e8cade7ad14ab7b8382195350ccd063185a69fdef8
-SIZE (xpi/firefox-31.5.3/de.xpi) = 395165
-SHA256 (xpi/firefox-31.5.3/el.xpi) = 112d549382ab47d4272a368ff437e491427918cf5c309ce0d454d23dfdbff53d
-SIZE (xpi/firefox-31.5.3/el.xpi) = 442982
-SHA256 (xpi/firefox-31.5.3/en-GB.xpi) = 7cc89c262bf6905305dfee047f2a08e2b98e3065390e76f7b5f9304dca12ad6b
-SIZE (xpi/firefox-31.5.3/en-GB.xpi) = 390118
-SHA256 (xpi/firefox-31.5.3/en-US.xpi) = c7fcd381a759c7d0569d0d70b6050001da125c80f06a9a9f7ae97dee399738d0
-SIZE (xpi/firefox-31.5.3/en-US.xpi) = 422787
-SHA256 (xpi/firefox-31.5.3/en-ZA.xpi) = 77d110c91bbcb87fc70ef0099e829483085c4536c9367fbf38d85209e66e2ad5
-SIZE (xpi/firefox-31.5.3/en-ZA.xpi) = 388528
-SHA256 (xpi/firefox-31.5.3/eo.xpi) = d28e411b30e261e1881ce4af9fb5303c24982a0a4298cc39e89ad64596cab88b
-SIZE (xpi/firefox-31.5.3/eo.xpi) = 431830
-SHA256 (xpi/firefox-31.5.3/es-AR.xpi) = 37b03a47f0a842355eca6b144e4a5927bb81918193c4cdb76dbc65721be23c79
-SIZE (xpi/firefox-31.5.3/es-AR.xpi) = 399937
-SHA256 (xpi/firefox-31.5.3/es-CL.xpi) = 9a0c745aa954cc9001a8926bdd94792cd91ffda53ec9d677a1d117721406d759
-SIZE (xpi/firefox-31.5.3/es-CL.xpi) = 342808
-SHA256 (xpi/firefox-31.5.3/es-ES.xpi) = 6f8c2c1828fa5454617374ed84cf514e6b4c47937caaf8edf6abef44f9237a43
-SIZE (xpi/firefox-31.5.3/es-ES.xpi) = 335880
-SHA256 (xpi/firefox-31.5.3/es-MX.xpi) = 982048c22ba8f9d1ae137683b8b93cef1b18043d37dfc6057f1ca1a64255ea7f
-SIZE (xpi/firefox-31.5.3/es-MX.xpi) = 402672
-SHA256 (xpi/firefox-31.5.3/et.xpi) = ec37f5a267818d7bd89732a4b8c8df7f6178c7c42d8e23fd1ae5ca3980209295
-SIZE (xpi/firefox-31.5.3/et.xpi) = 390361
-SHA256 (xpi/firefox-31.5.3/eu.xpi) = 8d9ecb87867b7475fae8f9f8afc53ba74c362dbf3ea6ef544e0cc2553dfa0b7d
-SIZE (xpi/firefox-31.5.3/eu.xpi) = 412999
-SHA256 (xpi/firefox-31.5.3/fa.xpi) = 02fa5051dd4c46e64a701798f035eefc84e8faa174d20a007c3b018696405b67
-SIZE (xpi/firefox-31.5.3/fa.xpi) = 460857
-SHA256 (xpi/firefox-31.5.3/ff.xpi) = a05239e83bb676ff145a16e7a82694fd8fd1e85042a1402208868100c81585cc
-SIZE (xpi/firefox-31.5.3/ff.xpi) = 400143
-SHA256 (xpi/firefox-31.5.3/fi.xpi) = b8985a70bf9c6acb9a32b17aea87986d7fec51140b877b940f884df6834859f2
-SIZE (xpi/firefox-31.5.3/fi.xpi) = 392740
-SHA256 (xpi/firefox-31.5.3/fr.xpi) = 5ef10eda4b2dde6eb1fd28bd9d01db59c6a1f9d30884094025fd285bd2e3edee
-SIZE (xpi/firefox-31.5.3/fr.xpi) = 406462
-SHA256 (xpi/firefox-31.5.3/fy-NL.xpi) = dd8bf07f45cce623ca42f46af29603a8552b1a0e486312b9c51a03d3136365e8
-SIZE (xpi/firefox-31.5.3/fy-NL.xpi) = 401933
-SHA256 (xpi/firefox-31.5.3/ga-IE.xpi) = 20b9cc0e230f20bb0640d452474bf8a96aa4cb61cbe0b5e703ab6b2ec0257c3d
-SIZE (xpi/firefox-31.5.3/ga-IE.xpi) = 410076
-SHA256 (xpi/firefox-31.5.3/gd.xpi) = 11bffbdad29e87dbe2cce2c588ca29b89ae97f4355cb1ff72214db956d575654
-SIZE (xpi/firefox-31.5.3/gd.xpi) = 403013
-SHA256 (xpi/firefox-31.5.3/gl.xpi) = 452a24fb1b9dec57c5a34a7a1ea71f8d21d8405fce738bee091009074d3a4d5b
-SIZE (xpi/firefox-31.5.3/gl.xpi) = 390599
-SHA256 (xpi/firefox-31.5.3/gu-IN.xpi) = e55cbdb1af9fb8d0751b098af3655dec918a897de53fc7abf0422484525c11b3
-SIZE (xpi/firefox-31.5.3/gu-IN.xpi) = 423503
-SHA256 (xpi/firefox-31.5.3/he.xpi) = a71e94a3b5d6e11a9c915df365b2260efc5c11ae4fcfb2417812aedbd1f487ed
-SIZE (xpi/firefox-31.5.3/he.xpi) = 427630
-SHA256 (xpi/firefox-31.5.3/hi-IN.xpi) = 36377da16d5b09ab73d8a61bfc26e1ca2c24dda5a0d9354814e0ed8a957b663d
-SIZE (xpi/firefox-31.5.3/hi-IN.xpi) = 441402
-SHA256 (xpi/firefox-31.5.3/hr.xpi) = 738833e10d35338004cf7a80f7a0be895898b3ea1a338bee6746d797a4da9d2e
-SIZE (xpi/firefox-31.5.3/hr.xpi) = 424370
-SHA256 (xpi/firefox-31.5.3/hsb.xpi) = 61cbb7b6e483c6cd7458d58349737cb62ef3b59186f1c095c3f77046719e7d19
-SIZE (xpi/firefox-31.5.3/hsb.xpi) = 413075
-SHA256 (xpi/firefox-31.5.3/hu.xpi) = 4bcad5316136237a80304afab4e441d3ee7820cee5808688affc0729b279e1dd
-SIZE (xpi/firefox-31.5.3/hu.xpi) = 398644
-SHA256 (xpi/firefox-31.5.3/hy-AM.xpi) = 5805226bd0d1d936bf0d035ad84245a59022d91fce1f9b98d892ee3a71f52987
-SIZE (xpi/firefox-31.5.3/hy-AM.xpi) = 478743
-SHA256 (xpi/firefox-31.5.3/id.xpi) = cbbb9f18584b2a37321a36999d4b40d3e2161b149bdeb4453d10478eb3fcd0ab
-SIZE (xpi/firefox-31.5.3/id.xpi) = 378301
-SHA256 (xpi/firefox-31.5.3/is.xpi) = ff4c5600a54ad4fe3f3c16ea6eb25c1bdd9734f5636deabdcfdbb4d1b45b2242
-SIZE (xpi/firefox-31.5.3/is.xpi) = 427326
-SHA256 (xpi/firefox-31.5.3/it.xpi) = a49a4f61ba71b8fa8b01b0a71ec5d1d4cec914725365d2d0468319599a82509a
-SIZE (xpi/firefox-31.5.3/it.xpi) = 330905
-SHA256 (xpi/firefox-31.5.3/ja.xpi) = 1c21b112ddf7f0b48f174c10d3ef56b262a400150dbaa961a830c398c7d2f461
-SIZE (xpi/firefox-31.5.3/ja.xpi) = 421665
-SHA256 (xpi/firefox-31.5.3/kk.xpi) = c8d5c28d047c2526b4c06251e7c1438042a73e63d7ca06b214f44d42cf57873a
-SIZE (xpi/firefox-31.5.3/kk.xpi) = 439116
-SHA256 (xpi/firefox-31.5.3/km.xpi) = adc0040f8d9191faa3fd1208bf6237ca6e8b8dde57ce43a8500580ac175d24da
-SIZE (xpi/firefox-31.5.3/km.xpi) = 506476
-SHA256 (xpi/firefox-31.5.3/kn.xpi) = 8eee19093ed29306b4199b747864619cb967ebe3b0e7b34f4a35bc354fbeba82
-SIZE (xpi/firefox-31.5.3/kn.xpi) = 458890
-SHA256 (xpi/firefox-31.5.3/ko.xpi) = 63d858ea947e2cb45619cd7f134204a175c6c3f70cc1911bc917a94f253ec230
-SIZE (xpi/firefox-31.5.3/ko.xpi) = 402815
-SHA256 (xpi/firefox-31.5.3/ku.xpi) = ebf9a2e49aa7d125d33d0d01cf919106c66bb696800ea71776eec06d44ab6e59
-SIZE (xpi/firefox-31.5.3/ku.xpi) = 420263
-SHA256 (xpi/firefox-31.5.3/lij.xpi) = e609c736b2186860dae3112fa6d57479eafc6ea17e4b7defd170a5204e28b919
-SIZE (xpi/firefox-31.5.3/lij.xpi) = 385868
-SHA256 (xpi/firefox-31.5.3/lt.xpi) = 1d35160e2e91dc975ce030a86e8d28096beaf23a149b547be3e6d91bd6bbad44
-SIZE (xpi/firefox-31.5.3/lt.xpi) = 435431
-SHA256 (xpi/firefox-31.5.3/lv.xpi) = 0e64508f921eeeb11ebd8af8b57f3554ddab6383439e39d23045f17df1c78269
-SIZE (xpi/firefox-31.5.3/lv.xpi) = 398576
-SHA256 (xpi/firefox-31.5.3/mai.xpi) = 2f574ad27b9911afd48e2a4f91abc885331133fc4ec7fb78139a8e1c074af69b
-SIZE (xpi/firefox-31.5.3/mai.xpi) = 444885
-SHA256 (xpi/firefox-31.5.3/mk.xpi) = 9510a11007a422afafb7ece88f09de78cf40017b6c3ea1dd2092efd655e60cf5
-SIZE (xpi/firefox-31.5.3/mk.xpi) = 475483
-SHA256 (xpi/firefox-31.5.3/ml.xpi) = 79b18ca7ca8c8375115d23dbcaecc02ee4fd44071c2d3a29d4e84b3957f35bac
-SIZE (xpi/firefox-31.5.3/ml.xpi) = 466254
-SHA256 (xpi/firefox-31.5.3/mr.xpi) = 236a38c9f6d64e776c5d5d023bf7d4aaf9bd2d84611ad892067d27cd88b95c38
-SIZE (xpi/firefox-31.5.3/mr.xpi) = 451292
-SHA256 (xpi/firefox-31.5.3/ms.xpi) = 6042929d2ae91d5d8d3189858c783293f1060326d24e2986326d8b35f7225fcc
-SIZE (xpi/firefox-31.5.3/ms.xpi) = 436230
-SHA256 (xpi/firefox-31.5.3/nb-NO.xpi) = 1f492868d4bcade733d6310f84158ed7cbf2f9f5effa0e6b7fd21dedfd74a707
-SIZE (xpi/firefox-31.5.3/nb-NO.xpi) = 392006
-SHA256 (xpi/firefox-31.5.3/nl.xpi) = ec019d247524e16355eb9d9ad638d4a4600cc9295dd743f958dbe9062e1f4301
-SIZE (xpi/firefox-31.5.3/nl.xpi) = 390885
-SHA256 (xpi/firefox-31.5.3/nn-NO.xpi) = ebd6f5f61da262fa77a9ad1e19378c946428c31b28408cf91af1ce2afedd81ad
-SIZE (xpi/firefox-31.5.3/nn-NO.xpi) = 386281
-SHA256 (xpi/firefox-31.5.3/or.xpi) = 783c59aa7382ea1665885eee0a91c0b5922cee0aba49d4c9d84ca9e4e2c43866
-SIZE (xpi/firefox-31.5.3/or.xpi) = 464749
-SHA256 (xpi/firefox-31.5.3/pa-IN.xpi) = 45b18d42502571b7a02a852becb30687313049ac44065c772c0c32670870f799
-SIZE (xpi/firefox-31.5.3/pa-IN.xpi) = 439326
-SHA256 (xpi/firefox-31.5.3/pl.xpi) = 0223bbcf8f113d41d50c813e1a69a3c72cb7a271932a2706fca68d84bbb5ba12
-SIZE (xpi/firefox-31.5.3/pl.xpi) = 374746
-SHA256 (xpi/firefox-31.5.3/pt-BR.xpi) = 4ad99d2a91cb6955961a784c7657fda77a0fd7679a69f51fe3bcf2ebfb55645f
-SIZE (xpi/firefox-31.5.3/pt-BR.xpi) = 405564
-SHA256 (xpi/firefox-31.5.3/pt-PT.xpi) = dcbfe66c39f0b72016e63852fd913c46bb57b9aef87d294105dfb68b348ed705
-SIZE (xpi/firefox-31.5.3/pt-PT.xpi) = 386344
-SHA256 (xpi/firefox-31.5.3/rm.xpi) = 12ba0e246b3c9ba2d3812f99fc50442009082f4b3fe82dacee4681320b5ff7c6
-SIZE (xpi/firefox-31.5.3/rm.xpi) = 399285
-SHA256 (xpi/firefox-31.5.3/ro.xpi) = 7d4f546fa2fdd3b68478a30f46eed7dc214cd97feb58cd1a1c88ff9471b21ae0
-SIZE (xpi/firefox-31.5.3/ro.xpi) = 439387
-SHA256 (xpi/firefox-31.5.3/ru.xpi) = 5affe9b2ecb0ad0fd315f76f2c42d9406a16162fadc81d4ca61f65bc93a91184
-SIZE (xpi/firefox-31.5.3/ru.xpi) = 367898
-SHA256 (xpi/firefox-31.5.3/si.xpi) = 891e34f1ab442b205b58bc81b9a97e2cf90df517b214605af6097dc0e93d11a3
-SIZE (xpi/firefox-31.5.3/si.xpi) = 463223
-SHA256 (xpi/firefox-31.5.3/sk.xpi) = be6fcf95cf5d8f4d28a7077998041f1f0d5af5884a13b49f839097cb1f77087b
-SIZE (xpi/firefox-31.5.3/sk.xpi) = 413802
-SHA256 (xpi/firefox-31.5.3/sl.xpi) = d0c046dda9fc22d17327aeacb6322948122630cd9cffb742acde0726a8024ca0
-SIZE (xpi/firefox-31.5.3/sl.xpi) = 387134
-SHA256 (xpi/firefox-31.5.3/son.xpi) = fd0f959dc5fc77eabdecb63fa692ed11323d251b04e1992f85293b0db756e28e
-SIZE (xpi/firefox-31.5.3/son.xpi) = 395147
-SHA256 (xpi/firefox-31.5.3/sq.xpi) = 085334884e43e28b6e83ab74cf17cd99898a7e52044ae29ce529e58ed21fbe9d
-SIZE (xpi/firefox-31.5.3/sq.xpi) = 431136
-SHA256 (xpi/firefox-31.5.3/sr.xpi) = 4382012d1cd1772d7669bbea502429323fc84ad404266e2ac497f345e3622a72
-SIZE (xpi/firefox-31.5.3/sr.xpi) = 425902
-SHA256 (xpi/firefox-31.5.3/sv-SE.xpi) = f2dd74455331ad9949b96b4fa151e887a7e22e46dbd7e7e1f969c32eb011ec59
-SIZE (xpi/firefox-31.5.3/sv-SE.xpi) = 399025
-SHA256 (xpi/firefox-31.5.3/ta.xpi) = 65ca70ae396b00b55be7d52140bdc327c4b96a6c0940242681c47b91fb26ff49
-SIZE (xpi/firefox-31.5.3/ta.xpi) = 447685
-SHA256 (xpi/firefox-31.5.3/te.xpi) = 1ba48ffc9eb5137b4af248697356908cc07c407be36698e4f3ff971d89bca56d
-SIZE (xpi/firefox-31.5.3/te.xpi) = 462588
-SHA256 (xpi/firefox-31.5.3/th.xpi) = 0797dfcc109090a6361365739195f2021efc81ccef2243a87bd380ceb9580a04
-SIZE (xpi/firefox-31.5.3/th.xpi) = 478128
-SHA256 (xpi/firefox-31.5.3/tr.xpi) = fae7dcb134aca8859524655e105f625c6ccee6427e04cfe335ee34eaebb7a76f
-SIZE (xpi/firefox-31.5.3/tr.xpi) = 417370
-SHA256 (xpi/firefox-31.5.3/uk.xpi) = 353c88e9bf416724ca651bb448266e1e870eae872d4a46c9b73e4ebfd2120ed2
-SIZE (xpi/firefox-31.5.3/uk.xpi) = 428002
-SHA256 (xpi/firefox-31.5.3/vi.xpi) = cc2bfb945b31ee3a7d316e11da7dfa44ce754f48923345517e2831ba8d16806e
-SIZE (xpi/firefox-31.5.3/vi.xpi) = 413374
-SHA256 (xpi/firefox-31.5.3/xh.xpi) = 41b443afc6c01cd474a87e2fa8601bd5c60f218ea98dbcd16aeed7a297f7a990
-SIZE (xpi/firefox-31.5.3/xh.xpi) = 397876
-SHA256 (xpi/firefox-31.5.3/zh-CN.xpi) = 60f987d0f8009cf7f2fac04806a6bc33bcea2c8896116636841706d7ef23c115
-SIZE (xpi/firefox-31.5.3/zh-CN.xpi) = 419629
-SHA256 (xpi/firefox-31.5.3/zh-TW.xpi) = 4d7854fed8b51d8d032a8842210ae28a1116da077ee1e232f08b51015caa7835
-SIZE (xpi/firefox-31.5.3/zh-TW.xpi) = 412521
-SHA256 (xpi/firefox-31.5.3/zu.xpi) = 38fc8df80b09973f5ffa5cdabfe7c210b369a1695ba6870581973ff88ffab954
-SIZE (xpi/firefox-31.5.3/zu.xpi) = 433216
+SHA256 (xpi/firefox-31.6.0/ach.xpi) = 260e24acea031c27c5b55a016602a0a2d7de77d02b9dbdd8a082883947b60582
+SIZE (xpi/firefox-31.6.0/ach.xpi) = 445326
+SHA256 (xpi/firefox-31.6.0/af.xpi) = a08e0044bc768e622306f0a9ca9e79949aafe3003368e0e745d647d2f89400d8
+SIZE (xpi/firefox-31.6.0/af.xpi) = 431089
+SHA256 (xpi/firefox-31.6.0/an.xpi) = ac6d78a9c60aa84306b382a2ac14d263ce2dc3a9f6ae79e9dab04e4915ce9f97
+SIZE (xpi/firefox-31.6.0/an.xpi) = 407151
+SHA256 (xpi/firefox-31.6.0/ar.xpi) = f52e73955224372dec765a5d434ec34956544e99f63689abcc765963c531b9c3
+SIZE (xpi/firefox-31.6.0/ar.xpi) = 459824
+SHA256 (xpi/firefox-31.6.0/as.xpi) = 3b354dc39c51ecde1a52a034bc71d53591fcc51ef436e033565439f23adab171
+SIZE (xpi/firefox-31.6.0/as.xpi) = 448569
+SHA256 (xpi/firefox-31.6.0/ast.xpi) = 82316d199880e1951333cac7b23b421333b514f826c0b0ad91fdb5ec231dc3bc
+SIZE (xpi/firefox-31.6.0/ast.xpi) = 352341
+SHA256 (xpi/firefox-31.6.0/be.xpi) = f0cf126cb49b613ad3451f04c05d77bbeacb4dbca6887d0d52bdabd3216698f1
+SIZE (xpi/firefox-31.6.0/be.xpi) = 378668
+SHA256 (xpi/firefox-31.6.0/bg.xpi) = 2a5e95a080be8a06a8e7106de9da19bc04a64715adafa331b665b4be860289ea
+SIZE (xpi/firefox-31.6.0/bg.xpi) = 438061
+SHA256 (xpi/firefox-31.6.0/bn-BD.xpi) = 71d75d47c6a7ffb14557def77aa29ff45fc837e03b0767c14b2bcc3ed9566737
+SIZE (xpi/firefox-31.6.0/bn-BD.xpi) = 472626
+SHA256 (xpi/firefox-31.6.0/bn-IN.xpi) = b1a3eab81d936ef194b12c92393a6cd4f2ac48c8bb930e0db0d257be7f34b3f4
+SIZE (xpi/firefox-31.6.0/bn-IN.xpi) = 462593
+SHA256 (xpi/firefox-31.6.0/br.xpi) = a556b83f8fd5b8700ec4bb616ab4977912eebc8dec1beba62cffd9b32f8c2317
+SIZE (xpi/firefox-31.6.0/br.xpi) = 389703
+SHA256 (xpi/firefox-31.6.0/bs.xpi) = f171c0d44420a905533ca7d8e1559be98b7355c7bb87beb8319bb84ac1bcde7a
+SIZE (xpi/firefox-31.6.0/bs.xpi) = 429014
+SHA256 (xpi/firefox-31.6.0/ca.xpi) = bc7923b5006d07ae5294fdc2fbe54e7f6f99cf0492a5f32c5f1dd697f6fb00cb
+SIZE (xpi/firefox-31.6.0/ca.xpi) = 403575
+SHA256 (xpi/firefox-31.6.0/cs.xpi) = 67d3153d76a13983c0ae660b8ac612e2896352a6bbabf0ddc93e71608082b016
+SIZE (xpi/firefox-31.6.0/cs.xpi) = 390978
+SHA256 (xpi/firefox-31.6.0/csb.xpi) = bda412420f96b1b51b500909af5792f8b6b7c7c05b37ff771151fe665060d1dd
+SIZE (xpi/firefox-31.6.0/csb.xpi) = 383695
+SHA256 (xpi/firefox-31.6.0/cy.xpi) = e4e6030ab6dbb540b415195985415ea72da0f8e1b229238c9ee07c76276410ce
+SIZE (xpi/firefox-31.6.0/cy.xpi) = 390727
+SHA256 (xpi/firefox-31.6.0/da.xpi) = 378cf86ef6fea5798544fe0e98857526397c6545580cfda40a4c6e0f7ce589a2
+SIZE (xpi/firefox-31.6.0/da.xpi) = 397747
+SHA256 (xpi/firefox-31.6.0/de.xpi) = 11c8e64f3c6405e7473484fcfa0e45d9855e73fb64f6e336ebf092417b402fcb
+SIZE (xpi/firefox-31.6.0/de.xpi) = 395165
+SHA256 (xpi/firefox-31.6.0/el.xpi) = accd3b86fce0dc9b3f33de5be51722a5d1c0e856343b83e7f8a537d1afcb893d
+SIZE (xpi/firefox-31.6.0/el.xpi) = 442982
+SHA256 (xpi/firefox-31.6.0/en-GB.xpi) = fb3220fe093ae582733b92adc7a139897ba6f1e77f03db22b9cd8146647c5fb9
+SIZE (xpi/firefox-31.6.0/en-GB.xpi) = 390118
+SHA256 (xpi/firefox-31.6.0/en-US.xpi) = a66312a5bc2388decb17c997248fe1c3a026aae06b6fa4619ed1592ad8704ea8
+SIZE (xpi/firefox-31.6.0/en-US.xpi) = 422788
+SHA256 (xpi/firefox-31.6.0/en-ZA.xpi) = f6fc9853f3748e493eb4cefef8734215ec8a5321c0de1702c1bf4355744454bc
+SIZE (xpi/firefox-31.6.0/en-ZA.xpi) = 388528
+SHA256 (xpi/firefox-31.6.0/eo.xpi) = 23d8c2ea9fc2f7d7b603961ed2a4e91dda4e32f051fd0a789db2fd5c5ae252f2
+SIZE (xpi/firefox-31.6.0/eo.xpi) = 431831
+SHA256 (xpi/firefox-31.6.0/es-AR.xpi) = cc997dd731ebb057c00cd842ccfc53cc01317c0b347e42195e393420acb2f990
+SIZE (xpi/firefox-31.6.0/es-AR.xpi) = 399937
+SHA256 (xpi/firefox-31.6.0/es-CL.xpi) = 49e6f87b034fdf04ffa418af3c633ad73af4cfee24d80bfd2c08e8bf7bd6eb60
+SIZE (xpi/firefox-31.6.0/es-CL.xpi) = 342808
+SHA256 (xpi/firefox-31.6.0/es-ES.xpi) = c751bad8313f17bc057be6e003d00876d1c7e7f9e98a91e717341eecbed1506d
+SIZE (xpi/firefox-31.6.0/es-ES.xpi) = 335880
+SHA256 (xpi/firefox-31.6.0/es-MX.xpi) = edaa595a52962b3c1819e6ccc5671a5b4de9cadd11d58e9f0a7ca36002d017b3
+SIZE (xpi/firefox-31.6.0/es-MX.xpi) = 402672
+SHA256 (xpi/firefox-31.6.0/et.xpi) = d228395ad78690477f6911016e1ea998eb8d426f0ef2b455051dce24d108bb3d
+SIZE (xpi/firefox-31.6.0/et.xpi) = 390360
+SHA256 (xpi/firefox-31.6.0/eu.xpi) = 681720056779f4ecf7f6b7deb192520ccce75facda3ef7d9e6c3b2650ec12386
+SIZE (xpi/firefox-31.6.0/eu.xpi) = 413000
+SHA256 (xpi/firefox-31.6.0/fa.xpi) = c03f8883bc240bc196a1d0bac7b1b1db47772b89fd1015c8affacbd33f813e85
+SIZE (xpi/firefox-31.6.0/fa.xpi) = 460857
+SHA256 (xpi/firefox-31.6.0/ff.xpi) = db4ae425a342e5d71508ee0f170ec350d2c74a2eac50b37075399897170a9dc5
+SIZE (xpi/firefox-31.6.0/ff.xpi) = 400143
+SHA256 (xpi/firefox-31.6.0/fi.xpi) = 45e1251013c7639504ee961e2a93b83cda324eaa0d00da9ad666625d31b41dde
+SIZE (xpi/firefox-31.6.0/fi.xpi) = 392740
+SHA256 (xpi/firefox-31.6.0/fr.xpi) = e6929c3006b150ff949bb491ef9e9be05e8d40974268d77cfaff3586474ed676
+SIZE (xpi/firefox-31.6.0/fr.xpi) = 406462
+SHA256 (xpi/firefox-31.6.0/fy-NL.xpi) = b499c4a75f8a757a27da9e19f2b04b979b816e715139cdbcb1a0fcd0627ff556
+SIZE (xpi/firefox-31.6.0/fy-NL.xpi) = 401930
+SHA256 (xpi/firefox-31.6.0/ga-IE.xpi) = 5f0b097a8aac0035a5969016f6a5743c6575e7188746f5111e21a52ad8fe4c4a
+SIZE (xpi/firefox-31.6.0/ga-IE.xpi) = 410077
+SHA256 (xpi/firefox-31.6.0/gd.xpi) = 8c1eeaddce3a8d85633db86c2f8574a976ca917ced508807eb3befbd7fe3dbe1
+SIZE (xpi/firefox-31.6.0/gd.xpi) = 403014
+SHA256 (xpi/firefox-31.6.0/gl.xpi) = 3eb15a737f0f025fa778e4133ddc439b38742d0169a02bb30d94843d06042a5e
+SIZE (xpi/firefox-31.6.0/gl.xpi) = 390599
+SHA256 (xpi/firefox-31.6.0/gu-IN.xpi) = 67cfe62d41ef98137da37657461b0891bf327c8286509d2a42f7bc01a912909b
+SIZE (xpi/firefox-31.6.0/gu-IN.xpi) = 423504
+SHA256 (xpi/firefox-31.6.0/he.xpi) = ff6148823b70fd2dcb751e2930abfb0c60c06d762caa29eab6b773a3efcc4b5e
+SIZE (xpi/firefox-31.6.0/he.xpi) = 427630
+SHA256 (xpi/firefox-31.6.0/hi-IN.xpi) = f304c9cb27db37a7bba1ce3a9735fa94a0145c6e3208bfd44fc54fa7d1bdc27e
+SIZE (xpi/firefox-31.6.0/hi-IN.xpi) = 441402
+SHA256 (xpi/firefox-31.6.0/hr.xpi) = 30eb5e81ef7b8524c715533852849319c5328286bdab9ff9c35682f9f49b47fc
+SIZE (xpi/firefox-31.6.0/hr.xpi) = 424371
+SHA256 (xpi/firefox-31.6.0/hsb.xpi) = ea94c8130c53fc6c031eaf96cb557329ba358398c4dd0ae421a0e570ef21fb9a
+SIZE (xpi/firefox-31.6.0/hsb.xpi) = 413076
+SHA256 (xpi/firefox-31.6.0/hu.xpi) = 15b90773e0d4da1721a598e30b94cf5cb3f32b6d7a1fdda279641a0c304210ee
+SIZE (xpi/firefox-31.6.0/hu.xpi) = 398644
+SHA256 (xpi/firefox-31.6.0/hy-AM.xpi) = c211d445aa41546f60fe02a5d303327558234e837c9f133ff5630ccb544f6c61
+SIZE (xpi/firefox-31.6.0/hy-AM.xpi) = 478743
+SHA256 (xpi/firefox-31.6.0/id.xpi) = 1329490526e260239f2b8efde39f2e88db45883becd0703e6fe3cc0fccd3b3d8
+SIZE (xpi/firefox-31.6.0/id.xpi) = 378301
+SHA256 (xpi/firefox-31.6.0/is.xpi) = 0150207fea2ee38861915a6974efaa86bad88a64d064ce0675af2116878ccec3
+SIZE (xpi/firefox-31.6.0/is.xpi) = 427327
+SHA256 (xpi/firefox-31.6.0/it.xpi) = 0040e18bf67533292565f401a37ba2236900957cd7dd777f32e31cb34e3a1bf3
+SIZE (xpi/firefox-31.6.0/it.xpi) = 330906
+SHA256 (xpi/firefox-31.6.0/ja.xpi) = b51a3408faaf6ee01b2f788ed037e651f2589be9c04667776d8dd8bbb53ae4e4
+SIZE (xpi/firefox-31.6.0/ja.xpi) = 421665
+SHA256 (xpi/firefox-31.6.0/kk.xpi) = fa461f1693c8e21f4586350774cdcdd2abace56c4f97618f41c8b888edb33c1d
+SIZE (xpi/firefox-31.6.0/kk.xpi) = 439116
+SHA256 (xpi/firefox-31.6.0/km.xpi) = 71ca8b6e3eb68b012534d2f22bb9ae62633a99166ba68b69b0aa4bbeaf43e17e
+SIZE (xpi/firefox-31.6.0/km.xpi) = 506476
+SHA256 (xpi/firefox-31.6.0/kn.xpi) = edf81e183989c473a152a838278f034491c03ee6a46887fd9adb497991d2b545
+SIZE (xpi/firefox-31.6.0/kn.xpi) = 458891
+SHA256 (xpi/firefox-31.6.0/ko.xpi) = 03019110af5b9134586b1dfe86157eb3921595724766092437b24d7a9ed15e10
+SIZE (xpi/firefox-31.6.0/ko.xpi) = 402815
+SHA256 (xpi/firefox-31.6.0/ku.xpi) = d7159b97c3efc343ccf7c88b917a88e2d93c603d5ebcc6b1dbb3fbe0dc4492d1
+SIZE (xpi/firefox-31.6.0/ku.xpi) = 420260
+SHA256 (xpi/firefox-31.6.0/lij.xpi) = d31745169bf3e5245b17c2d01675bb971f712a24090436907f11dcb2703c5ae9
+SIZE (xpi/firefox-31.6.0/lij.xpi) = 385864
+SHA256 (xpi/firefox-31.6.0/lt.xpi) = 93b85bcd56907de2700d963e8ae4e6f4c14bdb221f80fb1bf7b5d607c68ce2d7
+SIZE (xpi/firefox-31.6.0/lt.xpi) = 435431
+SHA256 (xpi/firefox-31.6.0/lv.xpi) = d4466e48de9beec1aaa667dec1489c913a86e205c1608ca1a58b6a6ea6d2e88c
+SIZE (xpi/firefox-31.6.0/lv.xpi) = 398576
+SHA256 (xpi/firefox-31.6.0/mai.xpi) = 81eaf82841c0a93449e737b64d4de11a0ada3b8537411f436fef195a18cb448e
+SIZE (xpi/firefox-31.6.0/mai.xpi) = 444885
+SHA256 (xpi/firefox-31.6.0/mk.xpi) = a4ec9547344563d1691d3b099b4846744f0075c2f8549a325312b900e4660af1
+SIZE (xpi/firefox-31.6.0/mk.xpi) = 475483
+SHA256 (xpi/firefox-31.6.0/ml.xpi) = ea3c4a99d49f0f8d5f043a20ab4b14f3ad92ec29524119f3e5425f3437485886
+SIZE (xpi/firefox-31.6.0/ml.xpi) = 466254
+SHA256 (xpi/firefox-31.6.0/mr.xpi) = 77cf2fe1466169e5c7e053a029b5a6bff2fa3c5657599fb2ab656e5099e195ea
+SIZE (xpi/firefox-31.6.0/mr.xpi) = 451292
+SHA256 (xpi/firefox-31.6.0/ms.xpi) = fd736d2c55eb34e5d3fde5e047e2a1a1d3098f27397e12084366992f9460254c
+SIZE (xpi/firefox-31.6.0/ms.xpi) = 436231
+SHA256 (xpi/firefox-31.6.0/nb-NO.xpi) = 15e25b7ec68df4b547722c71a3a1617810b7bfd0a5dbc75877a589ab566240ed
+SIZE (xpi/firefox-31.6.0/nb-NO.xpi) = 392006
+SHA256 (xpi/firefox-31.6.0/nl.xpi) = 68a335ab0caa1a98f3d2203413ea034873940c3c6e42983ecee0063ac238957e
+SIZE (xpi/firefox-31.6.0/nl.xpi) = 390885
+SHA256 (xpi/firefox-31.6.0/nn-NO.xpi) = 633c68a3643ff99152ab14db108c500df2fe58c0ac438796a464dd9cf13a5db4
+SIZE (xpi/firefox-31.6.0/nn-NO.xpi) = 386282
+SHA256 (xpi/firefox-31.6.0/or.xpi) = 28bf736700bbbbb09507f7a370fe4e6c755bbe0910a68714ba9a3b91fab47806
+SIZE (xpi/firefox-31.6.0/or.xpi) = 464749
+SHA256 (xpi/firefox-31.6.0/pa-IN.xpi) = fa43435741ab4d600c88a2db9ba3ce396d0dcd1d74a82da261ee717eadad451b
+SIZE (xpi/firefox-31.6.0/pa-IN.xpi) = 439326
+SHA256 (xpi/firefox-31.6.0/pl.xpi) = 424065efdfbfdf6de8e9304c656be79e680daec3cc1332996406980910ac66e7
+SIZE (xpi/firefox-31.6.0/pl.xpi) = 374747
+SHA256 (xpi/firefox-31.6.0/pt-BR.xpi) = 4538ab8f663f362c917c7e1a6dc28c6677ce982068df1ead945893d676417d78
+SIZE (xpi/firefox-31.6.0/pt-BR.xpi) = 405565
+SHA256 (xpi/firefox-31.6.0/pt-PT.xpi) = 3f413654ca087dae4240c2a3d9176a712089735c1cb9fd88ecd215e7e2af6584
+SIZE (xpi/firefox-31.6.0/pt-PT.xpi) = 386344
+SHA256 (xpi/firefox-31.6.0/rm.xpi) = bb465518d213f769b3b7bde25418f4ef3bf6f80a70262bf03f8d8aa2801ab0b9
+SIZE (xpi/firefox-31.6.0/rm.xpi) = 399286
+SHA256 (xpi/firefox-31.6.0/ro.xpi) = e159a21b52e0cb954a9bdf1a8469b39804cd7ce32829ff3d78399dec644cd5a5
+SIZE (xpi/firefox-31.6.0/ro.xpi) = 439388
+SHA256 (xpi/firefox-31.6.0/ru.xpi) = abc01550c3c7e0ef6ccc5b5b6ab87d7dfab7de5543657323727d49d446fe611d
+SIZE (xpi/firefox-31.6.0/ru.xpi) = 367897
+SHA256 (xpi/firefox-31.6.0/si.xpi) = fb22b1f01ba9ac5f4b6732ea324489990f6b6f4a3c4549b096e730eafec1c19d
+SIZE (xpi/firefox-31.6.0/si.xpi) = 463224
+SHA256 (xpi/firefox-31.6.0/sk.xpi) = 227ad1b874e761de087c7fcdfd180ad1874d6cbdc9438ea1d310fcb11df9ac2e
+SIZE (xpi/firefox-31.6.0/sk.xpi) = 413802
+SHA256 (xpi/firefox-31.6.0/sl.xpi) = b6ee571b0bd9dfb439b63d8fafe9e0c7c887f71064489628aea1a59a4a347e82
+SIZE (xpi/firefox-31.6.0/sl.xpi) = 387134
+SHA256 (xpi/firefox-31.6.0/son.xpi) = faa94ce43b7e23c2d763e2cfc4bb37669de813ac69b6581aad756776566a55d9
+SIZE (xpi/firefox-31.6.0/son.xpi) = 395144
+SHA256 (xpi/firefox-31.6.0/sq.xpi) = fa7dc4754278810f05e07d511095d0ccbe862b6cfbcb0ae894947c710f6a908c
+SIZE (xpi/firefox-31.6.0/sq.xpi) = 431136
+SHA256 (xpi/firefox-31.6.0/sr.xpi) = 221f4e9fca2063eee0d9265b227d65f2befb2b66447d77f51c075a9147970c32
+SIZE (xpi/firefox-31.6.0/sr.xpi) = 425902
+SHA256 (xpi/firefox-31.6.0/sv-SE.xpi) = e30934266cba9a23151a04c52b9e836b035cc3f89e3f85b09d47ef799f4e54bd
+SIZE (xpi/firefox-31.6.0/sv-SE.xpi) = 399026
+SHA256 (xpi/firefox-31.6.0/ta.xpi) = ee7272892fb2907de416e301964cf21c5c8e36afc72b3af8093eb1d32cbf2435
+SIZE (xpi/firefox-31.6.0/ta.xpi) = 447686
+SHA256 (xpi/firefox-31.6.0/te.xpi) = a00029dcb5d01c3cc8aa9f932c2e7d4a54c2c8a61fd62193690746012c2dbfae
+SIZE (xpi/firefox-31.6.0/te.xpi) = 462591
+SHA256 (xpi/firefox-31.6.0/th.xpi) = 1780b9d72ff57adf2da3fc36dfc51e55241f19636cd7ae78cd534ac959fad9b6
+SIZE (xpi/firefox-31.6.0/th.xpi) = 478127
+SHA256 (xpi/firefox-31.6.0/tr.xpi) = 93890192a9f6a8f596fbc5accfe4824a1f2aa1f078bfc09ad9a71c617bec9a21
+SIZE (xpi/firefox-31.6.0/tr.xpi) = 417370
+SHA256 (xpi/firefox-31.6.0/uk.xpi) = 55b58319c2871a9b2489465dedb93be404a0262697df8e44f86951ffa07c90ee
+SIZE (xpi/firefox-31.6.0/uk.xpi) = 428002
+SHA256 (xpi/firefox-31.6.0/vi.xpi) = aa9cef4ce877b89be65e464a3f28368f2c2225c57cb1b673432c98ca4a27dd6f
+SIZE (xpi/firefox-31.6.0/vi.xpi) = 413374
+SHA256 (xpi/firefox-31.6.0/xh.xpi) = 014bf1f5d22f23a49e136935e1174546a6741cf42882408895c8985616cb7dc3
+SIZE (xpi/firefox-31.6.0/xh.xpi) = 397876
+SHA256 (xpi/firefox-31.6.0/zh-CN.xpi) = 3a73fd89bd1ab16bcf9ffeec5013468542069cabf7d9c8f49046457def28212b
+SIZE (xpi/firefox-31.6.0/zh-CN.xpi) = 419630
+SHA256 (xpi/firefox-31.6.0/zh-TW.xpi) = fe4a99b85dd0f9bffb20828adea6b4682768cf9646f4a188bf15f5b9311be548
+SIZE (xpi/firefox-31.6.0/zh-TW.xpi) = 412521
+SHA256 (xpi/firefox-31.6.0/zu.xpi) = c74fd565002da788a8a37f2dd1b4bc72d026ef0ca5da5adc399a94b722e915c3
+SIZE (xpi/firefox-31.6.0/zu.xpi) = 433216
diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile
index 62574d200397..2d477e72aeb2 100644
--- a/www/firefox-esr/Makefile
+++ b/www/firefox-esr/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-DISTVERSION= 31.5.3
+DISTVERSION= 31.6.0
DISTVERSIONSUFFIX=esr.source
PORTEPOCH= 1
CATEGORIES= www ipv6
diff --git a/www/firefox-esr/distinfo b/www/firefox-esr/distinfo
index 93d4df0f5368..95da5e087f1b 100644
--- a/www/firefox-esr/distinfo
+++ b/www/firefox-esr/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-31.5.3esr.source.tar.bz2) = 4f0e89362767b1a2e3947abcb5d3edea199d126ce6ce900daec89492bf1ce302
-SIZE (firefox-31.5.3esr.source.tar.bz2) = 147757682
+SHA256 (firefox-31.6.0esr.source.tar.bz2) = 88ad45202a7aee9c43378879863b023270aa29463d312f396a78a6e9cdcbf5c3
+SIZE (firefox-31.6.0esr.source.tar.bz2) = 147767808
diff --git a/www/firefox-i18n/Makefile b/www/firefox-i18n/Makefile
index f8b81f25d41b..b9c4acd6d411 100644
--- a/www/firefox-i18n/Makefile
+++ b/www/firefox-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox-i18n
-PORTVERSION= 36.0.4
+PORTVERSION= 37.0
CATEGORIES= www
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}/linux-i686/xpi
PKGNAMEPREFIX=
@@ -14,7 +14,7 @@ COMMENT= Localized interface for Firefox
EXTRACT_DEPENDS= zip:${PORTSDIR}/archivers/zip
-USES= zip:infozip gecko:firefox,36,build
+USES= zip:infozip gecko:firefox,37,build
USE_XPI= firefox linux-firefox
NO_ARCH= yes
diff --git a/www/firefox-i18n/distinfo b/www/firefox-i18n/distinfo
index 1023cf5224bd..0e30e1826f00 100644
--- a/www/firefox-i18n/distinfo
+++ b/www/firefox-i18n/distinfo
@@ -1,176 +1,176 @@
-SHA256 (xpi/firefox-i18n-36.0.4/ach.xpi) = c9f5f3c10e55fb183d8aed30b3ae1039f712f69221f310a824a8061715f5ec0e
-SIZE (xpi/firefox-i18n-36.0.4/ach.xpi) = 465662
-SHA256 (xpi/firefox-i18n-36.0.4/af.xpi) = 0ea516db1f7f100b09ffe1bacf08d23b1a29ecb7cb691354f93467f9b97ef9f3
-SIZE (xpi/firefox-i18n-36.0.4/af.xpi) = 472057
-SHA256 (xpi/firefox-i18n-36.0.4/an.xpi) = 3e2f7f94d6a44bbb00a53d57a57e79bbee9a400c52e3e11ae59159567c8a22b3
-SIZE (xpi/firefox-i18n-36.0.4/an.xpi) = 449538
-SHA256 (xpi/firefox-i18n-36.0.4/ar.xpi) = 63ad3bbf77b6ee71a0c3761da376a1236b08a52e6db7581c776c7f1fdfdc85dd
-SIZE (xpi/firefox-i18n-36.0.4/ar.xpi) = 504370
-SHA256 (xpi/firefox-i18n-36.0.4/as.xpi) = fa4d84594a77b7b157ca7c926fabd7a811dbb87477b5ef738bec84c046081ae1
-SIZE (xpi/firefox-i18n-36.0.4/as.xpi) = 494230
-SHA256 (xpi/firefox-i18n-36.0.4/ast.xpi) = 6aafe303ab39f92d4348a8cbc90dd20dfa5eca97436b42726bb7406b6c02d4f9
-SIZE (xpi/firefox-i18n-36.0.4/ast.xpi) = 377933
-SHA256 (xpi/firefox-i18n-36.0.4/az.xpi) = e253309234b7f9e1134c232b181db7e5c5e8423a3850d0eed2d28e525f5c7f50
-SIZE (xpi/firefox-i18n-36.0.4/az.xpi) = 475729
-SHA256 (xpi/firefox-i18n-36.0.4/be.xpi) = bfe3c87abcc0cdfd739fae1a9ceca8dd322eb31146880d3e8db58267cbbdafa2
-SIZE (xpi/firefox-i18n-36.0.4/be.xpi) = 426959
-SHA256 (xpi/firefox-i18n-36.0.4/bg.xpi) = d556555f566356b245456581b7edf9a231afc25e59bba4161b21eb92873dd59e
-SIZE (xpi/firefox-i18n-36.0.4/bg.xpi) = 481499
-SHA256 (xpi/firefox-i18n-36.0.4/bn-BD.xpi) = 17b117646c5d43f62620b437e51c4c449f7c4f4cea8ab7c149a5665a08343669
-SIZE (xpi/firefox-i18n-36.0.4/bn-BD.xpi) = 515520
-SHA256 (xpi/firefox-i18n-36.0.4/bn-IN.xpi) = f2cb0f525d65b99709e2b4148cfe5dbda66210cad3acf98bd156dff06db1ff46
-SIZE (xpi/firefox-i18n-36.0.4/bn-IN.xpi) = 514353
-SHA256 (xpi/firefox-i18n-36.0.4/br.xpi) = 18404739173f03aa6fa01b99d9e090c0046edca175f78aefa04fc2a140cea6ca
-SIZE (xpi/firefox-i18n-36.0.4/br.xpi) = 430390
-SHA256 (xpi/firefox-i18n-36.0.4/bs.xpi) = 1f6e248d0a27f415b1661083b0df27b56ed5692e139abd5a269022f87617c9df
-SIZE (xpi/firefox-i18n-36.0.4/bs.xpi) = 472357
-SHA256 (xpi/firefox-i18n-36.0.4/ca.xpi) = f6e7b1d57654b5328bd45be9e3033f5d6469f1e318fb0cad55119e3827f26943
-SIZE (xpi/firefox-i18n-36.0.4/ca.xpi) = 446101
-SHA256 (xpi/firefox-i18n-36.0.4/cs.xpi) = 22538a55e45ba0cdae72d9d21ea0835a80b13657de9f1b25335742c338208cdb
-SIZE (xpi/firefox-i18n-36.0.4/cs.xpi) = 434462
-SHA256 (xpi/firefox-i18n-36.0.4/cy.xpi) = 6a860df001ad770d39f6ae3be8c295a4b189dc5ce4625b3aa29872555caec7f0
-SIZE (xpi/firefox-i18n-36.0.4/cy.xpi) = 432591
-SHA256 (xpi/firefox-i18n-36.0.4/da.xpi) = 7a86c2af5a1194f39b0fbcf2547404e4a50843fc0937917b7a569fc98769febf
-SIZE (xpi/firefox-i18n-36.0.4/da.xpi) = 439278
-SHA256 (xpi/firefox-i18n-36.0.4/de.xpi) = 15eb9fe1b985b935843d8ba31890c9635f78226fc4bdfe90281aa296e5fc99f9
-SIZE (xpi/firefox-i18n-36.0.4/de.xpi) = 439187
-SHA256 (xpi/firefox-i18n-36.0.4/dsb.xpi) = 99bb449e7823c4a4928a54ce2c0365dbf59fbc0173205665077894f2bf112b76
-SIZE (xpi/firefox-i18n-36.0.4/dsb.xpi) = 458449
-SHA256 (xpi/firefox-i18n-36.0.4/el.xpi) = 1825ae1148d6fd5f453090e9313bc9c058394c0a4c310af4d3823198d98c75ce
-SIZE (xpi/firefox-i18n-36.0.4/el.xpi) = 485456
-SHA256 (xpi/firefox-i18n-36.0.4/en-GB.xpi) = f6e1b6f5d3db562e38e870cc0456e8d0e67f70b03076b993ed7483ba136dd576
-SIZE (xpi/firefox-i18n-36.0.4/en-GB.xpi) = 429600
-SHA256 (xpi/firefox-i18n-36.0.4/en-US.xpi) = 1e43a9e24a832b79604dbc1ea60b62210c9bcb5509c18a651e2ec60b6e3133aa
-SIZE (xpi/firefox-i18n-36.0.4/en-US.xpi) = 458577
-SHA256 (xpi/firefox-i18n-36.0.4/en-ZA.xpi) = 2386563c3963415d081731a5d3d962bd4699253ac6c204fff340881621bbf68b
-SIZE (xpi/firefox-i18n-36.0.4/en-ZA.xpi) = 425588
-SHA256 (xpi/firefox-i18n-36.0.4/eo.xpi) = dd633f78e19ad1d159d20a0f912bbf2337d09178baa8f2109ffd0f9534206e8b
-SIZE (xpi/firefox-i18n-36.0.4/eo.xpi) = 473725
-SHA256 (xpi/firefox-i18n-36.0.4/es-AR.xpi) = f35b2575f8bbebdc3ce0b29c0c32b3b3b5ea9e153a2948773e80e9dfe6a6606e
-SIZE (xpi/firefox-i18n-36.0.4/es-AR.xpi) = 442481
-SHA256 (xpi/firefox-i18n-36.0.4/es-CL.xpi) = 84f629c99495eb31ac9426d873050b5e38f787accd0b09a931b79826002e25c5
-SIZE (xpi/firefox-i18n-36.0.4/es-CL.xpi) = 377186
-SHA256 (xpi/firefox-i18n-36.0.4/es-ES.xpi) = 726a4a3166dd4449635f83604849cf8408789703b3984e5340e1877e1cce7de7
-SIZE (xpi/firefox-i18n-36.0.4/es-ES.xpi) = 366987
-SHA256 (xpi/firefox-i18n-36.0.4/es-MX.xpi) = ba027a522dfa5903440fb0c3efda1626b586ab3e8f2ee4e46bca02c7f5daee8c
-SIZE (xpi/firefox-i18n-36.0.4/es-MX.xpi) = 444970
-SHA256 (xpi/firefox-i18n-36.0.4/et.xpi) = bdb86bc3d4418a2353633145069c50973d75ba06eba2d11cc70ca04484acb4e0
-SIZE (xpi/firefox-i18n-36.0.4/et.xpi) = 431612
-SHA256 (xpi/firefox-i18n-36.0.4/eu.xpi) = 4515d11667cb72bcbc024ee25f948b1ca24d40d33d20ee699bea18acccd7409c
-SIZE (xpi/firefox-i18n-36.0.4/eu.xpi) = 454740
-SHA256 (xpi/firefox-i18n-36.0.4/fa.xpi) = aeba44c9b2770f9915b50539a5d7226785fcfb86c1c32e25a078a8a2796fbb62
-SIZE (xpi/firefox-i18n-36.0.4/fa.xpi) = 500879
-SHA256 (xpi/firefox-i18n-36.0.4/ff.xpi) = 3e416402d33937ed40f42071a5e3b827338bab4951be1d0b2777e806e28b40d6
-SIZE (xpi/firefox-i18n-36.0.4/ff.xpi) = 442342
-SHA256 (xpi/firefox-i18n-36.0.4/fi.xpi) = 2db90946d837b8b2ebef065c43f98d05811351210dee58b735c99fba18a4127c
-SIZE (xpi/firefox-i18n-36.0.4/fi.xpi) = 433372
-SHA256 (xpi/firefox-i18n-36.0.4/fr.xpi) = bc3d2ddcb8c5eff8e43bdcd20b81a5ef494910cb3b4962b7bf4e4f2266e13cdd
-SIZE (xpi/firefox-i18n-36.0.4/fr.xpi) = 449178
-SHA256 (xpi/firefox-i18n-36.0.4/fy-NL.xpi) = 1658bd6067ca3de57e5707c5511e5036060a056da51f37f0d890d3e50ae9fe19
-SIZE (xpi/firefox-i18n-36.0.4/fy-NL.xpi) = 443808
-SHA256 (xpi/firefox-i18n-36.0.4/ga-IE.xpi) = 7766742416cc59b2b83cc021d67c7852a72a32b3b28dbe5ff8a670a175ca33d5
-SIZE (xpi/firefox-i18n-36.0.4/ga-IE.xpi) = 453000
-SHA256 (xpi/firefox-i18n-36.0.4/gd.xpi) = a865dc776328ae87764bcb8a365f0a4f849b57fcb69321fb219d477a26d8ba99
-SIZE (xpi/firefox-i18n-36.0.4/gd.xpi) = 442657
-SHA256 (xpi/firefox-i18n-36.0.4/gl.xpi) = 4878fb06045a5305f870a66b71bb1f9d7715126a832871e92806ff934f1a7fd3
-SIZE (xpi/firefox-i18n-36.0.4/gl.xpi) = 433436
-SHA256 (xpi/firefox-i18n-36.0.4/gu-IN.xpi) = f94814de5f8a321edefb7f9c20f87c9c19d82d3210cdb660d9b137d77415ed7e
-SIZE (xpi/firefox-i18n-36.0.4/gu-IN.xpi) = 463249
-SHA256 (xpi/firefox-i18n-36.0.4/he.xpi) = 18e4dc8407017021243c038937ec4ef2c8c97941e311998a2bf542e9420feb9f
-SIZE (xpi/firefox-i18n-36.0.4/he.xpi) = 473376
-SHA256 (xpi/firefox-i18n-36.0.4/hi-IN.xpi) = dc1aa1e87522b1c324a69c5c95f133176909cfd763566a3e53dad533650073ea
-SIZE (xpi/firefox-i18n-36.0.4/hi-IN.xpi) = 493295
-SHA256 (xpi/firefox-i18n-36.0.4/hr.xpi) = a311cdb9d088ee5656e25b90d7a6a65da0586151925bd78b75a205d25614100b
-SIZE (xpi/firefox-i18n-36.0.4/hr.xpi) = 466360
-SHA256 (xpi/firefox-i18n-36.0.4/hsb.xpi) = 2e889dd54bd50c173e5283e5a035f9f4bb91454022df99ecc815dcca8dfbcbe3
-SIZE (xpi/firefox-i18n-36.0.4/hsb.xpi) = 456356
-SHA256 (xpi/firefox-i18n-36.0.4/hu.xpi) = 74ea33e23bc0410d588386790f56e10763a2f6e0d08bad6ad32abc45791a526f
-SIZE (xpi/firefox-i18n-36.0.4/hu.xpi) = 441328
-SHA256 (xpi/firefox-i18n-36.0.4/hy-AM.xpi) = 4542c3d00e8505b7b3ae5d793b737f64ce4ff7395b3a99503d04dc2cc9291d60
-SIZE (xpi/firefox-i18n-36.0.4/hy-AM.xpi) = 522156
-SHA256 (xpi/firefox-i18n-36.0.4/id.xpi) = 5641bb277cea62a5c64becc9bc9e4aae5dd18e3f3970e0c471e869e8bacb2da3
-SIZE (xpi/firefox-i18n-36.0.4/id.xpi) = 419616
-SHA256 (xpi/firefox-i18n-36.0.4/is.xpi) = 594c92f272f75f0e5182a03fafc03cf14b46525d3316f94c1c39e83ea8905c40
-SIZE (xpi/firefox-i18n-36.0.4/is.xpi) = 473424
-SHA256 (xpi/firefox-i18n-36.0.4/it.xpi) = da525062d0a57beaa23d7c5214f9004ed127a22617d1de8243b2180720647c6b
-SIZE (xpi/firefox-i18n-36.0.4/it.xpi) = 361316
-SHA256 (xpi/firefox-i18n-36.0.4/ja.xpi) = 8852cca6a77735ce258a62fa844ded21da3c226a0954e7e6aed951db275627ba
-SIZE (xpi/firefox-i18n-36.0.4/ja.xpi) = 465476
-SHA256 (xpi/firefox-i18n-36.0.4/kk.xpi) = 22feb2ea6a5ac675fd1f0b3348570452f2818b80655f005128350830ec363519
-SIZE (xpi/firefox-i18n-36.0.4/kk.xpi) = 490171
-SHA256 (xpi/firefox-i18n-36.0.4/km.xpi) = d1b1a8a7baa553036467bf9769ee7043b334bce19afedd18c56e48481a6f85d1
-SIZE (xpi/firefox-i18n-36.0.4/km.xpi) = 550766
-SHA256 (xpi/firefox-i18n-36.0.4/kn.xpi) = 5713d809786f34815f0e7c55ca0fd126e6dbc9fadb11eea031b7ed7e7e108350
-SIZE (xpi/firefox-i18n-36.0.4/kn.xpi) = 516617
-SHA256 (xpi/firefox-i18n-36.0.4/ko.xpi) = 17ab57f042a7c1ba540f7905a531f264d66586828090070c3454280c01fb483e
-SIZE (xpi/firefox-i18n-36.0.4/ko.xpi) = 448221
-SHA256 (xpi/firefox-i18n-36.0.4/lij.xpi) = 5d4b2b794303f8180f72bab39b0206513566ef67baf79ddc88362f1765c540b4
-SIZE (xpi/firefox-i18n-36.0.4/lij.xpi) = 430855
-SHA256 (xpi/firefox-i18n-36.0.4/lt.xpi) = f263c56e07d83abec5b5dff41654f5f36ef0e9185d7138d2ed8f5e093c34dec9
-SIZE (xpi/firefox-i18n-36.0.4/lt.xpi) = 474006
-SHA256 (xpi/firefox-i18n-36.0.4/lv.xpi) = 8a2637e407d14701f6b983e739314f4ee19c668200fb413c92c751dfe269c50e
-SIZE (xpi/firefox-i18n-36.0.4/lv.xpi) = 436233
-SHA256 (xpi/firefox-i18n-36.0.4/mai.xpi) = a7b674f5bd61b53d62d74b995e20826bed876be7d21c678f1f75cfa55944baf6
-SIZE (xpi/firefox-i18n-36.0.4/mai.xpi) = 485633
-SHA256 (xpi/firefox-i18n-36.0.4/mk.xpi) = 579c05d8a233071cd8146958876420350fda03a4a78ddd8df56413084b003a43
-SIZE (xpi/firefox-i18n-36.0.4/mk.xpi) = 516380
-SHA256 (xpi/firefox-i18n-36.0.4/ml.xpi) = 0bb4b7a1ac8cd5a81657fe769d99d67d1b55b336198b46649777523621672914
-SIZE (xpi/firefox-i18n-36.0.4/ml.xpi) = 514513
-SHA256 (xpi/firefox-i18n-36.0.4/mr.xpi) = 7a7a0be2e5cc695337458f8472d3437ab86d42556638cdac0cf302682be7967b
-SIZE (xpi/firefox-i18n-36.0.4/mr.xpi) = 495230
-SHA256 (xpi/firefox-i18n-36.0.4/ms.xpi) = e9d5694d625ca5d99514df1ab1fff62ce164c52002a5ad17f4f9c9f7250f25af
-SIZE (xpi/firefox-i18n-36.0.4/ms.xpi) = 478249
-SHA256 (xpi/firefox-i18n-36.0.4/nb-NO.xpi) = 812f29f2b182d108bbc376eef0b965ed3f3c081a782e60412004b607c555128d
-SIZE (xpi/firefox-i18n-36.0.4/nb-NO.xpi) = 432556
-SHA256 (xpi/firefox-i18n-36.0.4/nl.xpi) = dd56b83cdda99115d911e1f383aef72d030a91c6845e3e84ad12a2700eea54d0
-SIZE (xpi/firefox-i18n-36.0.4/nl.xpi) = 432349
-SHA256 (xpi/firefox-i18n-36.0.4/nn-NO.xpi) = bd9eab7dbcbfb7c3452c905f286da5470e7e4e8724a311a5c4b013d45a799efb
-SIZE (xpi/firefox-i18n-36.0.4/nn-NO.xpi) = 426610
-SHA256 (xpi/firefox-i18n-36.0.4/or.xpi) = 01d6f2ef3ef1caed284d0f4420d4a795647b79d77de8f688293eae82cc5b5334
-SIZE (xpi/firefox-i18n-36.0.4/or.xpi) = 512016
-SHA256 (xpi/firefox-i18n-36.0.4/pa-IN.xpi) = 2f20e5133e994ad195697521c5700ca0ce619ad2fa6fce908332993c8d587d9a
-SIZE (xpi/firefox-i18n-36.0.4/pa-IN.xpi) = 481893
-SHA256 (xpi/firefox-i18n-36.0.4/pl.xpi) = 769315f8b69ad38a4e2ae798cc802388d5f3510d14e9d744205e82ce251b31a2
-SIZE (xpi/firefox-i18n-36.0.4/pl.xpi) = 402049
-SHA256 (xpi/firefox-i18n-36.0.4/pt-BR.xpi) = 536bd0969bf14b506d18296590381b2506ef821a1a7a7b7031ffef0371428a07
-SIZE (xpi/firefox-i18n-36.0.4/pt-BR.xpi) = 447669
-SHA256 (xpi/firefox-i18n-36.0.4/pt-PT.xpi) = f2278d4d0c243dd22d96a1c43ad4155f91768088aacbbff5435bcdded1b7b508
-SIZE (xpi/firefox-i18n-36.0.4/pt-PT.xpi) = 428708
-SHA256 (xpi/firefox-i18n-36.0.4/rm.xpi) = 4300a89656f697a484e7575bf15573210a82d43f8324fbabe2c2c0443c77dd0e
-SIZE (xpi/firefox-i18n-36.0.4/rm.xpi) = 443941
-SHA256 (xpi/firefox-i18n-36.0.4/ro.xpi) = b377ba2fc84d461c9948690466066a18d01fd7a217c511ec09f79ce35b23a734
-SIZE (xpi/firefox-i18n-36.0.4/ro.xpi) = 483570
-SHA256 (xpi/firefox-i18n-36.0.4/ru.xpi) = 8f39031f01aa6460db17ff0b65f030e99902b8e79e8427652313d839c826f791
-SIZE (xpi/firefox-i18n-36.0.4/ru.xpi) = 406024
-SHA256 (xpi/firefox-i18n-36.0.4/si.xpi) = 9c1d8caa9c18ef06323af1827eb754b636f6694290be5608a1702f6e8d2bcfa7
-SIZE (xpi/firefox-i18n-36.0.4/si.xpi) = 514744
-SHA256 (xpi/firefox-i18n-36.0.4/sk.xpi) = e6535a4e649546a0b0a12cddfeb1dea7aede5a7a5ae28e944ee13252552ac2c5
-SIZE (xpi/firefox-i18n-36.0.4/sk.xpi) = 457190
-SHA256 (xpi/firefox-i18n-36.0.4/sl.xpi) = ef53001f0e6362b8bba129571f9cb579f240d877879ffd40dfcba48a13599f4c
-SIZE (xpi/firefox-i18n-36.0.4/sl.xpi) = 429929
-SHA256 (xpi/firefox-i18n-36.0.4/son.xpi) = a10920d452471bc627c5cf078011b10706411b9255484dbedaa5d481e223f303
-SIZE (xpi/firefox-i18n-36.0.4/son.xpi) = 436772
-SHA256 (xpi/firefox-i18n-36.0.4/sq.xpi) = e6ed16e285a9c3c8bc075f8675f2d4ed0c5e12d0abb5c993021efa02cbc754b3
-SIZE (xpi/firefox-i18n-36.0.4/sq.xpi) = 474054
-SHA256 (xpi/firefox-i18n-36.0.4/sr.xpi) = b9691eb6e7e3ed4a8c4b1a44b72665eb65422fb16e738966c264cdf2640ecfb1
-SIZE (xpi/firefox-i18n-36.0.4/sr.xpi) = 467366
-SHA256 (xpi/firefox-i18n-36.0.4/sv-SE.xpi) = 9a02d164652b51d98cafd5bb461fe0c889363fdb155c4ddde9fc3342a7474f9c
-SIZE (xpi/firefox-i18n-36.0.4/sv-SE.xpi) = 440721
-SHA256 (xpi/firefox-i18n-36.0.4/ta.xpi) = 3ce29801778f58fb52f4cf3ac998c43b47129743aff303a3de63282a8d2cdf45
-SIZE (xpi/firefox-i18n-36.0.4/ta.xpi) = 493861
-SHA256 (xpi/firefox-i18n-36.0.4/te.xpi) = 267d658d6f46df8168e68047c38c990a91018323e3162bb62bc53c21164f2bd7
-SIZE (xpi/firefox-i18n-36.0.4/te.xpi) = 513694
-SHA256 (xpi/firefox-i18n-36.0.4/th.xpi) = 34a17ed01959a13dfabb73c5d82de0c35b4c66a0359db9c6f508d2afa3f2f657
-SIZE (xpi/firefox-i18n-36.0.4/th.xpi) = 521633
-SHA256 (xpi/firefox-i18n-36.0.4/tr.xpi) = 96fd17c7febf6c352de936142d75e72e23b2de823fd9e6110fe684604be0a58c
-SIZE (xpi/firefox-i18n-36.0.4/tr.xpi) = 468962
-SHA256 (xpi/firefox-i18n-36.0.4/uk.xpi) = 868d38f2ec352b83a1b7c412c45d9d875e39b9601d082c611f79eaf7792e170f
-SIZE (xpi/firefox-i18n-36.0.4/uk.xpi) = 469174
-SHA256 (xpi/firefox-i18n-36.0.4/vi.xpi) = f33ed07c1f08be37535257be3443f38acec405d0c380425e9e0c3c50f03ed5f3
-SIZE (xpi/firefox-i18n-36.0.4/vi.xpi) = 454446
-SHA256 (xpi/firefox-i18n-36.0.4/xh.xpi) = 54d1f91960e5c3216f20456dc7ebc94e17a045d549fe348e1b7f7028c799dc8c
-SIZE (xpi/firefox-i18n-36.0.4/xh.xpi) = 436241
-SHA256 (xpi/firefox-i18n-36.0.4/zh-CN.xpi) = 7a6337ca9ce8abe4cd2d7d1e03830045dbe9331fafc3fce836e0cbc5693fb5aa
-SIZE (xpi/firefox-i18n-36.0.4/zh-CN.xpi) = 475835
-SHA256 (xpi/firefox-i18n-36.0.4/zh-TW.xpi) = 4af6d3661e68055dcfcf7b3063252552781f410f9ce223917882d879a371835c
-SIZE (xpi/firefox-i18n-36.0.4/zh-TW.xpi) = 455307
+SHA256 (xpi/firefox-i18n-37.0/ach.xpi) = 7397d95648c1fffc31c242ab609cc180a30fc75a2d0bb0f93fc3a9a3b8089471
+SIZE (xpi/firefox-i18n-37.0/ach.xpi) = 470357
+SHA256 (xpi/firefox-i18n-37.0/af.xpi) = 35b112560e4904cb128c7589d3439f612b9dbf4c6995fd648926d40612f6d7d0
+SIZE (xpi/firefox-i18n-37.0/af.xpi) = 476562
+SHA256 (xpi/firefox-i18n-37.0/an.xpi) = 156a50ddbe02a531462f7090c7aa13300135f1f789c5afb9a5b207b129c32fce
+SIZE (xpi/firefox-i18n-37.0/an.xpi) = 454283
+SHA256 (xpi/firefox-i18n-37.0/ar.xpi) = 544110f186ead3bed3a905b2479ed4eeadfdaf01c72588be58893455dc8ce8cd
+SIZE (xpi/firefox-i18n-37.0/ar.xpi) = 508941
+SHA256 (xpi/firefox-i18n-37.0/as.xpi) = 532e0ae1f5bfe2721b8ac2dbd7ddb21fcda32a6e9ded44d562bde44341141a32
+SIZE (xpi/firefox-i18n-37.0/as.xpi) = 499985
+SHA256 (xpi/firefox-i18n-37.0/ast.xpi) = c91ffdfb7e05110069b8fcc97b7f61d58af1fd3d5536ab4b88b1425a4175266a
+SIZE (xpi/firefox-i18n-37.0/ast.xpi) = 384089
+SHA256 (xpi/firefox-i18n-37.0/az.xpi) = c6abb58b60a671851d3aa9da3ee1f85283bca8fb5e93e01879e0bc3dfe39251e
+SIZE (xpi/firefox-i18n-37.0/az.xpi) = 482465
+SHA256 (xpi/firefox-i18n-37.0/be.xpi) = 354a53bdd5cd6e3200782b25491b1cf0e1987bea3a6bd1faf6b9eec0bf70f90b
+SIZE (xpi/firefox-i18n-37.0/be.xpi) = 431982
+SHA256 (xpi/firefox-i18n-37.0/bg.xpi) = 73bb76044f37e9019efd89e69884677c6e88c4b85ba4c2a84bdb698d667988a6
+SIZE (xpi/firefox-i18n-37.0/bg.xpi) = 486713
+SHA256 (xpi/firefox-i18n-37.0/bn-BD.xpi) = 51a678d151ec3dd23aba59f034fd33dc523c423c73947a161be3e76824845a14
+SIZE (xpi/firefox-i18n-37.0/bn-BD.xpi) = 520237
+SHA256 (xpi/firefox-i18n-37.0/bn-IN.xpi) = 022ba972810af6a76c108aef4c0c4376ed28261900e536aaad1d8b94fdd4598c
+SIZE (xpi/firefox-i18n-37.0/bn-IN.xpi) = 519971
+SHA256 (xpi/firefox-i18n-37.0/br.xpi) = 709441390c7658e734e9cb9a9282192f37cada66352ef1cdefbcc5cced66c563
+SIZE (xpi/firefox-i18n-37.0/br.xpi) = 435125
+SHA256 (xpi/firefox-i18n-37.0/bs.xpi) = d853b083c2d044479761703e3fc5736b4d0cbe86b0bb94ac99b11c7841a49e85
+SIZE (xpi/firefox-i18n-37.0/bs.xpi) = 476981
+SHA256 (xpi/firefox-i18n-37.0/ca.xpi) = 776c52986ca9e63e927d639975549b576db66458c28391b03130b4bb45e6ff0b
+SIZE (xpi/firefox-i18n-37.0/ca.xpi) = 450917
+SHA256 (xpi/firefox-i18n-37.0/cs.xpi) = 14d228e61a7e93ca803f10474e6d5bf3e8308082d58a432c71d6d39fdfd5ce18
+SIZE (xpi/firefox-i18n-37.0/cs.xpi) = 439372
+SHA256 (xpi/firefox-i18n-37.0/cy.xpi) = 9aeca718c2da6c2331348ce16d1f4adce6ccbb0908ab65c7e52dbacac56f4861
+SIZE (xpi/firefox-i18n-37.0/cy.xpi) = 437310
+SHA256 (xpi/firefox-i18n-37.0/da.xpi) = c03afc1b42eb960eaee9d8fcf9ed7af8548d1d7d7d86c6fca4179c06ca7f86c1
+SIZE (xpi/firefox-i18n-37.0/da.xpi) = 443933
+SHA256 (xpi/firefox-i18n-37.0/de.xpi) = a93aaa608b5d8664ac89b3f8cf4467dc364875c5f06013c464ba906a576e7fb1
+SIZE (xpi/firefox-i18n-37.0/de.xpi) = 444259
+SHA256 (xpi/firefox-i18n-37.0/dsb.xpi) = 95303b6573b4e9a611cb6d1774321e974c4ffdbd5d21aa2020e8cfba95313908
+SIZE (xpi/firefox-i18n-37.0/dsb.xpi) = 463355
+SHA256 (xpi/firefox-i18n-37.0/el.xpi) = 78cbe9b4201e6e0ddf3afc3e74e72adcaaca01f9e5e4424f6727b2fe74bc304a
+SIZE (xpi/firefox-i18n-37.0/el.xpi) = 490091
+SHA256 (xpi/firefox-i18n-37.0/en-GB.xpi) = a9499eff8d3d497dda34a002af3f2d044a74335617d4feec0a3623cded86ee32
+SIZE (xpi/firefox-i18n-37.0/en-GB.xpi) = 431297
+SHA256 (xpi/firefox-i18n-37.0/en-US.xpi) = ebf22e238d305b1a96bd653cfc31984d225d1606f0c728d71e5ef7f92fd57fb8
+SIZE (xpi/firefox-i18n-37.0/en-US.xpi) = 463095
+SHA256 (xpi/firefox-i18n-37.0/en-ZA.xpi) = f9875ddba8e26b7e29cfe0bf6ea0481d5bfdfb300e665fb7f18d078cef7998f1
+SIZE (xpi/firefox-i18n-37.0/en-ZA.xpi) = 431152
+SHA256 (xpi/firefox-i18n-37.0/eo.xpi) = cd8fa163af53456ab1553a33d65e3f81831ea34f84203f44d18f43222708fbd2
+SIZE (xpi/firefox-i18n-37.0/eo.xpi) = 478447
+SHA256 (xpi/firefox-i18n-37.0/es-AR.xpi) = 33a283e84c426287cdd19685f9c0a1deb54d66ae577863900e3c1aa1dc145390
+SIZE (xpi/firefox-i18n-37.0/es-AR.xpi) = 447016
+SHA256 (xpi/firefox-i18n-37.0/es-CL.xpi) = b1d2b5e75d8119a27e4dea55ed0310f216517e8260d0128647ccf56b5be90c47
+SIZE (xpi/firefox-i18n-37.0/es-CL.xpi) = 380180
+SHA256 (xpi/firefox-i18n-37.0/es-ES.xpi) = abd186843636bcd797c886f56d2ce92f1603489ce8fc90925a919b1dec2b70e3
+SIZE (xpi/firefox-i18n-37.0/es-ES.xpi) = 369780
+SHA256 (xpi/firefox-i18n-37.0/es-MX.xpi) = 388464ef77d8e03266b5246da8669c1800eb8770bcfe2c674e85c3a49ece8952
+SIZE (xpi/firefox-i18n-37.0/es-MX.xpi) = 449798
+SHA256 (xpi/firefox-i18n-37.0/et.xpi) = f970e83917f508d33d4ee3a3b5cf767a1fe83f3dced96ae150370e40306c88f6
+SIZE (xpi/firefox-i18n-37.0/et.xpi) = 436249
+SHA256 (xpi/firefox-i18n-37.0/eu.xpi) = 8220318bc2b7edb0c1672f8aa40812acb0c6001673f63f1e910e91c77cdcc053
+SIZE (xpi/firefox-i18n-37.0/eu.xpi) = 459487
+SHA256 (xpi/firefox-i18n-37.0/fa.xpi) = eff2e130db6d08155897a063016ea1d9da3cb9170c5bcc4569749d2d7a1978fe
+SIZE (xpi/firefox-i18n-37.0/fa.xpi) = 505515
+SHA256 (xpi/firefox-i18n-37.0/ff.xpi) = 31aa9f804722037045821841f73adffb6c76c2dd5c17d349266c7e8fb1868077
+SIZE (xpi/firefox-i18n-37.0/ff.xpi) = 446882
+SHA256 (xpi/firefox-i18n-37.0/fi.xpi) = f6f5f75a648ef8d1acd912aa97c1e1d1c61e2a60e8a4bf3e86d0e720be068bfc
+SIZE (xpi/firefox-i18n-37.0/fi.xpi) = 438061
+SHA256 (xpi/firefox-i18n-37.0/fr.xpi) = bdcc9b67f1dfd1cd9c2edbab7a983579e1a01f3afa44f9023e70359519f6eb6a
+SIZE (xpi/firefox-i18n-37.0/fr.xpi) = 453984
+SHA256 (xpi/firefox-i18n-37.0/fy-NL.xpi) = 42fd6f90cfc6a2fdc4ff211753d2cfbdd0be91416e87b6ff05f25195a15f17e7
+SIZE (xpi/firefox-i18n-37.0/fy-NL.xpi) = 448477
+SHA256 (xpi/firefox-i18n-37.0/ga-IE.xpi) = 42a7bae3a13b8407d05fa78e7f059a9ffd13cc6275b33b667a6f18a3dab558e7
+SIZE (xpi/firefox-i18n-37.0/ga-IE.xpi) = 458669
+SHA256 (xpi/firefox-i18n-37.0/gd.xpi) = 0dc3df87f0ce30cf26e9d7667aac5dfce65b028482a347c40140177c0f7dd8ef
+SIZE (xpi/firefox-i18n-37.0/gd.xpi) = 447475
+SHA256 (xpi/firefox-i18n-37.0/gl.xpi) = cc15f4a26578c50fcf32efd2f115c1b81b907b6461b26f6bdcc6322a7572697d
+SIZE (xpi/firefox-i18n-37.0/gl.xpi) = 439064
+SHA256 (xpi/firefox-i18n-37.0/gu-IN.xpi) = bcf4469b9d49744e7324ad9be8828df028f94786256bd4dcbade89f559a22091
+SIZE (xpi/firefox-i18n-37.0/gu-IN.xpi) = 468925
+SHA256 (xpi/firefox-i18n-37.0/he.xpi) = 51bfc129f8e16e2b51d9f395f7ba30287886318596f14faf4e624fd8ef82ac01
+SIZE (xpi/firefox-i18n-37.0/he.xpi) = 478216
+SHA256 (xpi/firefox-i18n-37.0/hi-IN.xpi) = 4fa3fac939bcc86eaf0f7d4508864a9517cf94ec8dc07cd607c99e29234c0b9c
+SIZE (xpi/firefox-i18n-37.0/hi-IN.xpi) = 498977
+SHA256 (xpi/firefox-i18n-37.0/hr.xpi) = 0b4481fcc98cf1ce155d57ffd9f26ece97bc32618146723c6fe1348e3a205084
+SIZE (xpi/firefox-i18n-37.0/hr.xpi) = 471178
+SHA256 (xpi/firefox-i18n-37.0/hsb.xpi) = 1a344820de02d9a145c559b34202cfc696d37756790eace02359e9fc79f2627e
+SIZE (xpi/firefox-i18n-37.0/hsb.xpi) = 461251
+SHA256 (xpi/firefox-i18n-37.0/hu.xpi) = bb6824b1de486456f591468660f18dd87d4ceb53b8222e819d2c3726d1d77bfb
+SIZE (xpi/firefox-i18n-37.0/hu.xpi) = 446230
+SHA256 (xpi/firefox-i18n-37.0/hy-AM.xpi) = 97a62aa885bd66c7a9854858ce91cb526e37dc67ea756f4470ce3b61a099c1f3
+SIZE (xpi/firefox-i18n-37.0/hy-AM.xpi) = 527191
+SHA256 (xpi/firefox-i18n-37.0/id.xpi) = 47745ddd5c0c4a14cf3c46684a8930f0cb0108fef8f1e28d0beb96e8234cbbd3
+SIZE (xpi/firefox-i18n-37.0/id.xpi) = 424540
+SHA256 (xpi/firefox-i18n-37.0/is.xpi) = 0800ae4ba9b8fcaae752702f22f9dadd01bcd4271798b41aa75723fb6468a7a6
+SIZE (xpi/firefox-i18n-37.0/is.xpi) = 478134
+SHA256 (xpi/firefox-i18n-37.0/it.xpi) = 292f30923427a6d7b6cef2faa7f96388d90d3ef79a9c3c5f3acaae18bf56a8e9
+SIZE (xpi/firefox-i18n-37.0/it.xpi) = 364080
+SHA256 (xpi/firefox-i18n-37.0/ja.xpi) = 5d975fc7da400191cf458a1724cca3dcf82de15fb4ad54bb8f9ab5de793bf288
+SIZE (xpi/firefox-i18n-37.0/ja.xpi) = 470682
+SHA256 (xpi/firefox-i18n-37.0/kk.xpi) = 5b707711f17e1d3ff141d6ab5936bcc2af8772aa7e54fcfd81485486511ec538
+SIZE (xpi/firefox-i18n-37.0/kk.xpi) = 495567
+SHA256 (xpi/firefox-i18n-37.0/km.xpi) = 40e884266db629582332da2312d5b52d0c0e35122bf28a7fe8297630db347302
+SIZE (xpi/firefox-i18n-37.0/km.xpi) = 558104
+SHA256 (xpi/firefox-i18n-37.0/kn.xpi) = 6b427b7c1ae3b6ec3c54d86329a5ba2c624bd644829cc0fe125c02b3ff3fd6b1
+SIZE (xpi/firefox-i18n-37.0/kn.xpi) = 525618
+SHA256 (xpi/firefox-i18n-37.0/ko.xpi) = 8164bc05b4199d49b695fd519c60cf65e0949fde6855ba7bbfc02ce382e1947d
+SIZE (xpi/firefox-i18n-37.0/ko.xpi) = 453333
+SHA256 (xpi/firefox-i18n-37.0/lij.xpi) = 4f29a314a8f2c3f467938adf757281badb1d548ba74f8d0f6a140dd8b31474ba
+SIZE (xpi/firefox-i18n-37.0/lij.xpi) = 435606
+SHA256 (xpi/firefox-i18n-37.0/lt.xpi) = 095c38463811c64623b2c92b6790bd3a3b71c0af0be786511d8804d9fe3c4905
+SIZE (xpi/firefox-i18n-37.0/lt.xpi) = 478855
+SHA256 (xpi/firefox-i18n-37.0/lv.xpi) = 5ac75b155c0ec75ba27304aeffb5b9a6ca2eedf3f067286fbf1db00880e404fc
+SIZE (xpi/firefox-i18n-37.0/lv.xpi) = 460098
+SHA256 (xpi/firefox-i18n-37.0/mai.xpi) = 504b4895e033ceeaacd88ec7fecc283d0bfc677b32e2963ae078599750960c55
+SIZE (xpi/firefox-i18n-37.0/mai.xpi) = 490292
+SHA256 (xpi/firefox-i18n-37.0/mk.xpi) = 6abd23c2dbb615ac3935ec6818afff79f090e857256d30ead248a283925789d6
+SIZE (xpi/firefox-i18n-37.0/mk.xpi) = 521046
+SHA256 (xpi/firefox-i18n-37.0/ml.xpi) = d8f0451d4dd5562fc919ee853c39e0bc08628ec17b3da71e18c22efcd2c00c91
+SIZE (xpi/firefox-i18n-37.0/ml.xpi) = 520101
+SHA256 (xpi/firefox-i18n-37.0/mr.xpi) = 1d40b5ffac3e78ba7b45a6a8a3d880ba1d793d0f14726421f21fc919b9eef075
+SIZE (xpi/firefox-i18n-37.0/mr.xpi) = 500823
+SHA256 (xpi/firefox-i18n-37.0/ms.xpi) = 076aad960e8a6f31029b8b3e79aa2c04f12526d3a6aa5596b5a42e6d88d3bf8f
+SIZE (xpi/firefox-i18n-37.0/ms.xpi) = 483812
+SHA256 (xpi/firefox-i18n-37.0/nb-NO.xpi) = 13825f4c6eb65675f12a8b4403d9253d416376126702ef9a6116320e6dbe3e5f
+SIZE (xpi/firefox-i18n-37.0/nb-NO.xpi) = 437177
+SHA256 (xpi/firefox-i18n-37.0/nl.xpi) = 3e0c12edef1439e838f79a589fcee4e5e09389f7ac0aca6514aed273568c8b2a
+SIZE (xpi/firefox-i18n-37.0/nl.xpi) = 437046
+SHA256 (xpi/firefox-i18n-37.0/nn-NO.xpi) = 7238249a7a689de7d6b98106a6b6872392dee436763dd32ac06cc8e4414d8886
+SIZE (xpi/firefox-i18n-37.0/nn-NO.xpi) = 431560
+SHA256 (xpi/firefox-i18n-37.0/or.xpi) = 23a33bd6a3dee918e7619da4a7c347684456e19d1a448c7cce34acebf70fb88b
+SIZE (xpi/firefox-i18n-37.0/or.xpi) = 517634
+SHA256 (xpi/firefox-i18n-37.0/pa-IN.xpi) = e8b1872891c2b31be75747bbf7e76ae341af38faf5ee76c1e7deae04b29fc387
+SIZE (xpi/firefox-i18n-37.0/pa-IN.xpi) = 487553
+SHA256 (xpi/firefox-i18n-37.0/pl.xpi) = e70ecfdce8e42287a82be358fa663cb1af9d068f4fae66b759dede8258498a2c
+SIZE (xpi/firefox-i18n-37.0/pl.xpi) = 404494
+SHA256 (xpi/firefox-i18n-37.0/pt-BR.xpi) = 41cd8f505cd210e153b55d5178e28f004aa4b8a1c2cd81cbf0a50d1f55f60c31
+SIZE (xpi/firefox-i18n-37.0/pt-BR.xpi) = 453349
+SHA256 (xpi/firefox-i18n-37.0/pt-PT.xpi) = 38699f1c82ba034032576cdd3534c57bb1eb8f1c0ca51f174b268913c397edf1
+SIZE (xpi/firefox-i18n-37.0/pt-PT.xpi) = 433015
+SHA256 (xpi/firefox-i18n-37.0/rm.xpi) = 95b4c2829f02816d570a0b681d2ca7bcaf19665625917befa23c455f2a9cc37f
+SIZE (xpi/firefox-i18n-37.0/rm.xpi) = 439787
+SHA256 (xpi/firefox-i18n-37.0/ro.xpi) = 543c13fe6d23166bd3963dbef6ca6405e2d2f1f2149fc9115fd5c93b19ad3d3e
+SIZE (xpi/firefox-i18n-37.0/ro.xpi) = 487620
+SHA256 (xpi/firefox-i18n-37.0/ru.xpi) = c175d98b0799705f652108df9e9dc03e01984c345bc1a5f87c915e940e1e0a27
+SIZE (xpi/firefox-i18n-37.0/ru.xpi) = 409377
+SHA256 (xpi/firefox-i18n-37.0/si.xpi) = 93fee756f161b00163661af1acf059f7dd06743e53d76fd9b1b03b83236a28a2
+SIZE (xpi/firefox-i18n-37.0/si.xpi) = 520321
+SHA256 (xpi/firefox-i18n-37.0/sk.xpi) = 88878f7ef8a5597483e3a7f8d282d81b96b7d3688b91f0463b2496d4169a0c8e
+SIZE (xpi/firefox-i18n-37.0/sk.xpi) = 462173
+SHA256 (xpi/firefox-i18n-37.0/sl.xpi) = d1c5aca646deb552e147c7534a667f7afee421a8a82b30d592917fa64cdc2a04
+SIZE (xpi/firefox-i18n-37.0/sl.xpi) = 434637
+SHA256 (xpi/firefox-i18n-37.0/son.xpi) = 8dbfc95322a6513d9e5a393761c94edf37251dbfdcdfd0a0b38de5ae22ccdb8b
+SIZE (xpi/firefox-i18n-37.0/son.xpi) = 442054
+SHA256 (xpi/firefox-i18n-37.0/sq.xpi) = 184ffdcc7a9113d93867825b7d181d2dd9976d3c92f929f1d8851bfdc2d8545b
+SIZE (xpi/firefox-i18n-37.0/sq.xpi) = 478874
+SHA256 (xpi/firefox-i18n-37.0/sr.xpi) = e18c57ef2beffa671b97bf8685ac0379fd833a6616a8e82586b4027bfa0bc16e
+SIZE (xpi/firefox-i18n-37.0/sr.xpi) = 472190
+SHA256 (xpi/firefox-i18n-37.0/sv-SE.xpi) = 62c3b5dd83f2c48630160fcca013039c90e75984e42014f5c0aa8ba0c731e782
+SIZE (xpi/firefox-i18n-37.0/sv-SE.xpi) = 445514
+SHA256 (xpi/firefox-i18n-37.0/ta.xpi) = cdaef662d167864c42a70afd49890ee840eb0080fcea9e985b0704cbe77714c4
+SIZE (xpi/firefox-i18n-37.0/ta.xpi) = 499304
+SHA256 (xpi/firefox-i18n-37.0/te.xpi) = cbcf7b48ef34dc405d178c32b6c6423b0103f00db408c83471ccf04a809d48ca
+SIZE (xpi/firefox-i18n-37.0/te.xpi) = 517657
+SHA256 (xpi/firefox-i18n-37.0/th.xpi) = c8f7f646802ea7d3b1cc393663a393f68c8cca360e3dcf1fa69180a1b2e8d58e
+SIZE (xpi/firefox-i18n-37.0/th.xpi) = 527245
+SHA256 (xpi/firefox-i18n-37.0/tr.xpi) = 2cf66b9f60f0565ae196fb30230ece77fb3300e90ce315f8846fb7a7fdd568c2
+SIZE (xpi/firefox-i18n-37.0/tr.xpi) = 473883
+SHA256 (xpi/firefox-i18n-37.0/uk.xpi) = 350857ce0abc5ea340622c151a2938f256bde5a9ed4cd71cbc469fff2b16dbd0
+SIZE (xpi/firefox-i18n-37.0/uk.xpi) = 482540
+SHA256 (xpi/firefox-i18n-37.0/vi.xpi) = b74eaae46bce0a6b6fe3c2a1e7ee6fe36a44632f4b2c6860567e928c98b3edee
+SIZE (xpi/firefox-i18n-37.0/vi.xpi) = 459107
+SHA256 (xpi/firefox-i18n-37.0/xh.xpi) = 903dbad2cca1d3951e11d3e3fa5c87424affbed0979b84da9c5ab1f59a8bab4f
+SIZE (xpi/firefox-i18n-37.0/xh.xpi) = 440994
+SHA256 (xpi/firefox-i18n-37.0/zh-CN.xpi) = 0d2badd0938d208de8427d113f77dce95076314e0907424410c026150a0ce148
+SIZE (xpi/firefox-i18n-37.0/zh-CN.xpi) = 480864
+SHA256 (xpi/firefox-i18n-37.0/zh-TW.xpi) = a9036d57998756575b269deca177c3649df50a4d13a245c6ddca04fe4a7933ec
+SIZE (xpi/firefox-i18n-37.0/zh-TW.xpi) = 460363
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index 5f61ceabffcf..e86992f43dee 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-DISTVERSION= 36.0.4
+DISTVERSION= 37.0
DISTVERSIONSUFFIX=.source
PORTEPOCH= 1
CATEGORIES= www ipv6
@@ -17,9 +17,9 @@ BUILD_DEPENDS= nspr>=4.10.6:${PORTSDIR}/devel/nspr \
libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \
cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo \
soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \
- harfbuzz>=0.9.34:${PORTSDIR}/print/harfbuzz \
+ harfbuzz>=0.9.25:${PORTSDIR}/print/harfbuzz \
graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \
- libvorbis>=1.3.5:${PORTSDIR}/audio/libvorbis \
+ libvorbis>=1.3.4:${PORTSDIR}/audio/libvorbis \
opus>=1.1:${PORTSDIR}/audio/opus \
libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \
sqlite3>=3.8.7.4:${PORTSDIR}/databases/sqlite3 \
diff --git a/www/firefox/distinfo b/www/firefox/distinfo
index 813ca048cbf5..50a15c5ee963 100644
--- a/www/firefox/distinfo
+++ b/www/firefox/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-36.0.4.source.tar.bz2) = 9143bddc64746bf6471b5ae55b9013586b0ffd6c5515c5566b4015e0bf1e16ab
-SIZE (firefox-36.0.4.source.tar.bz2) = 179307558
+SHA256 (firefox-37.0.source.tar.bz2) = 204b4a0c6478cdb4e57cf0947ce66d3c544a96b4c5eee4f64169deed67fb060d
+SIZE (firefox-37.0.source.tar.bz2) = 178736413
diff --git a/www/firefox/files/patch-bug1021761 b/www/firefox/files/patch-bug1021761
index 74a5d7a30f61..253327b733a7 100644
--- a/www/firefox/files/patch-bug1021761
+++ b/www/firefox/files/patch-bug1021761
@@ -542,42 +542,42 @@ index a962553..1f780f4 100644
}
alsa_locked_pcm_close(stm->pcm);
stm->pcm = NULL;
-@@ -937,12 +1043,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels)
+@@ -938,12 +1044,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels)
return CUBEB_ERROR;
}
-- rv = snd_pcm_hw_params_any(stm->pcm, hw_params);
-+ rv = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params);
- if (rv < 0) {
+- r = snd_pcm_hw_params_any(stm->pcm, hw_params);
++ r = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params);
+ if (r < 0) {
return CUBEB_ERROR;
}
-- rv = snd_pcm_hw_params_get_channels_max(hw_params, max_channels);
-+ rv = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels);
- if (rv < 0) {
+- r = snd_pcm_hw_params_get_channels_max(hw_params, max_channels);
++ r = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels);
+ if (r < 0) {
return CUBEB_ERROR;
}
-@@ -962,34 +1068,34 @@ alsa_get_preferred_sample_rate(cubeb * ctx, uint32_t * rate) {
+@@ -963,34 +1069,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. */
-- rv = snd_pcm_open(&pcm, "", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0);
-+ rv = WRAP(snd_pcm_open)(&pcm, "", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0);
- if (rv < 0) {
+- r = snd_pcm_open(&pcm, "default", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0);
++ r = WRAP(snd_pcm_open)(&pcm, "default", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0);
+ if (r < 0) {
return CUBEB_ERROR;
}
-- rv = snd_pcm_hw_params_any(pcm, hw_params);
-+ rv = WRAP(snd_pcm_hw_params_any)(pcm, hw_params);
- if (rv < 0) {
+- r = snd_pcm_hw_params_any(pcm, hw_params);
++ r = WRAP(snd_pcm_hw_params_any)(pcm, hw_params);
+ if (r < 0) {
- snd_pcm_close(pcm);
+ WRAP(snd_pcm_close)(pcm);
return CUBEB_ERROR;
}
-- rv = snd_pcm_hw_params_get_rate(hw_params, rate, &dir);
-+ rv = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir);
- if (rv >= 0) {
+- r = snd_pcm_hw_params_get_rate(hw_params, rate, &dir);
++ r = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir);
+ if (r >= 0) {
/* There is a default rate: use it. */
- snd_pcm_close(pcm);
+ WRAP(snd_pcm_close)(pcm);
@@ -587,9 +587,9 @@ index a962553..1f780f4 100644
/* Use a common rate, alsa may adjust it based on hw/etc. capabilities. */
*rate = 44100;
-- rv = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL);
-+ rv = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL);
- if (rv < 0) {
+- r = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL);
++ r = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL);
+ if (r < 0) {
- snd_pcm_close(pcm);
+ WRAP(snd_pcm_close)(pcm);
return CUBEB_ERROR;
diff --git a/www/firefox/files/patch-bug1073117 b/www/firefox/files/patch-bug1073117
index 756a64293b35..e9d86eceeff4 100644
--- a/www/firefox/files/patch-bug1073117
+++ b/www/firefox/files/patch-bug1073117
@@ -1,245 +1,511 @@
+diff --git widget/gtk/gtk2drawing.c widget/gtk/gtk2drawing.c
+index 34f22af..1b950ab 100644
+--- widget/gtk/gtk2drawing.c
++++ widget/gtk/gtk2drawing.c
+@@ -831,7 +831,7 @@ moz_gtk_get_focus_outline_size(gint* focus_h_width, gint* focus_v_width)
+ return MOZ_GTK_SUCCESS;
+ }
+
+-gint
++static gint
+ moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus,
+ gint* focus_width, gint* focus_pad)
+ {
+@@ -928,7 +928,7 @@ moz_gtk_splitter_get_metrics(gint orientation, gint* size)
+ return MOZ_GTK_SUCCESS;
+ }
+
+-gint
++static gint
+ moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border)
+ {
+ static const GtkBorder default_inner_border = { 1, 1, 1, 1 };
diff --git widget/gtk/gtk3drawing.c widget/gtk/gtk3drawing.c
-index e9e21b1..750140c 100644
+index 08a58d6..7fef6fa 100644
--- widget/gtk/gtk3drawing.c
+++ widget/gtk/gtk3drawing.c
-@@ -64,6 +64,7 @@ static GtkWidget* gScrolledWindowWidget;
+@@ -762,37 +762,17 @@ moz_gtk_radio_get_metrics(gint* indicator_size, gint* indicator_spacing)
+ gint
+ moz_gtk_get_focus_outline_size(gint* focus_h_width, gint* focus_v_width)
+ {
+- gboolean interior_focus;
+- gint focus_width = 0;
++ GtkBorder border;
++ GtkBorder padding;
++ GtkStyleContext *style;
- static style_prop_t style_prop_func;
- static gboolean have_arrow_scaling;
-+static gboolean checkbox_check_state;
- static gboolean is_initialized;
+ ensure_entry_widget();
+- gtk_widget_style_get(gEntryWidget,
+- "interior-focus", &interior_focus,
+- "focus-line-width", &focus_width,
+- NULL);
+- if (interior_focus) {
+- GtkBorder border;
+- GtkStyleContext *style = gtk_widget_get_style_context(gEntryWidget);
+- gtk_style_context_get_border(style, 0, &border);
+- *focus_h_width = border.left + focus_width;
+- *focus_v_width = border.top + focus_width;
+- } else {
+- *focus_h_width = focus_width;
+- *focus_v_width = focus_width;
+- }
+- return MOZ_GTK_SUCCESS;
+-}
+-
+-gint
+-moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus,
+- gint* focus_width, gint* focus_pad)
+-{
+- gtk_widget_style_get (widget,
+- "interior-focus", interior_focus,
+- "focus-line-width", focus_width,
+- "focus-padding", focus_pad,
+- NULL);
++ style = gtk_widget_get_style_context(gEntryWidget);
- #define ARROW_UP 0
-@@ -71,6 +72,10 @@ static gboolean is_initialized;
- #define ARROW_RIGHT G_PI_2
- #define ARROW_LEFT (G_PI+G_PI_2)
++ gtk_style_context_get_border(style, 0, &border);
++ gtk_style_context_get_padding(style, 0, &padding);
++ *focus_h_width = border.left + padding.left;
++ *focus_v_width = border.top + padding.top;
+ return MOZ_GTK_SUCCESS;
+ }
-+#if !GTK_CHECK_VERSION(3,14,0)
-+#define GTK_STATE_FLAG_CHECKED (1 << 11)
-+#endif
-+
- static GtkStateFlags
- GetStateFlagsFromGtkWidgetState(GtkWidgetState* state)
- {
-@@ -714,6 +719,11 @@ moz_gtk_init()
- is_initialized = TRUE;
- have_arrow_scaling = (gtk_major_version > 2 ||
- (gtk_major_version == 2 && gtk_minor_version >= 12));
-+ if (gtk_major_version > 3 ||
-+ (gtk_major_version == 3 && gtk_minor_version >= 14))
-+ checkbox_check_state = GTK_STATE_FLAG_CHECKED;
-+ else
-+ checkbox_check_state = GTK_STATE_FLAG_ACTIVE;
-
- /* Add style property to GtkEntry.
- * Adding the style property to the normal GtkEntry class means that it
-@@ -1004,10 +1014,10 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRectangle* rect,
- gtk_widget_set_sensitive(w, !state->disabled);
- gtk_widget_set_direction(w, direction);
+@@ -880,24 +860,6 @@ moz_gtk_splitter_get_metrics(gint orientation, gint* size)
+ return MOZ_GTK_SUCCESS;
+ }
+
+-gint
+-moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border)
+-{
+- static const GtkBorder default_inner_border = { 1, 1, 1, 1 };
+- GtkBorder *tmp_border;
+-
+- gtk_widget_style_get (widget, "inner-border", &tmp_border, NULL);
+-
+- if (tmp_border) {
+- *inner_border = *tmp_border;
+- gtk_border_free(tmp_border);
+- }
+- else
+- *inner_border = default_inner_border;
+-
+- return MOZ_GTK_SUCCESS;
+-}
+-
+ static gint
+ moz_gtk_button_paint(cairo_t *cr, GdkRectangle* rect,
+ GtkWidgetState* state,
+@@ -908,19 +870,8 @@ moz_gtk_button_paint(cairo_t *cr, GdkRectangle* rect,
+ GtkStyleContext* style = gtk_widget_get_style_context(widget);
+ gint x = rect->x, y=rect->y, width=rect->width, height=rect->height;
+
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+-
+- moz_gtk_widget_get_focus(widget, &interior_focus, &focus_width, &focus_pad);
+ gtk_widget_set_direction(widget, direction);
+-
+- if (!interior_focus && state->focused) {
+- x += focus_width + focus_pad;
+- y += focus_width + focus_pad;
+- width -= 2 * (focus_width + focus_pad);
+- height -= 2 * (focus_width + focus_pad);
+- }
+-
++
gtk_style_context_save(style);
--
-+
- if (isradio) {
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_RADIO);
-- gtk_style_context_set_state(style, selected ? GTK_STATE_FLAG_ACTIVE :
-+ gtk_style_context_set_state(style, selected ? checkbox_check_state :
- GTK_STATE_FLAG_NORMAL);
- gtk_render_option(style, cr, x, y, width, height);
- if (state->focused) {
-@@ -1025,7 +1035,7 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRectangle* rect,
- gtk_style_context_set_state(style, GTK_STATE_FLAG_INCONSISTENT);
- gtk_toggle_button_set_inconsistent(GTK_TOGGLE_BUTTON(gCheckboxWidget), TRUE);
- } else if (selected) {
-- gtk_style_context_set_state(style, GTK_STATE_FLAG_ACTIVE);
-+ gtk_style_context_set_state(style, checkbox_check_state);
- } else {
- gtk_toggle_button_set_inconsistent(GTK_TOGGLE_BUTTON(gCheckboxWidget), FALSE);
- }
-@@ -2588,8 +2598,9 @@ moz_gtk_check_menu_item_paint(cairo_t *cr, GdkRectangle* rect,
- gtk_style_context_add_class(style, GTK_STYLE_CLASS_CHECK);
+ gtk_style_context_set_state(style, state_flags);
+
+@@ -953,20 +904,12 @@ moz_gtk_button_paint(cairo_t *cr, GdkRectangle* rect,
}
-- if (checked)
-- state_flags |= GTK_STATE_FLAG_ACTIVE;
-+ if (checked) {
-+ state_flags |= checkbox_check_state;
-+ }
-
- gtk_style_context_set_state(style, state_flags);
- gtk_style_context_get_padding(style, state_flags, &padding);
-diff --git widget/gtk/nsLookAndFeel.cpp widget/gtk/nsLookAndFeel.cpp
-index 3562cf2..ea4cc0e 100644
---- widget/gtk/nsLookAndFeel.cpp
-+++ widget/gtk/nsLookAndFeel.cpp
-@@ -38,7 +38,6 @@ nsLookAndFeel::nsLookAndFeel()
- mStyle(nullptr),
- #else
- mBackgroundStyle(nullptr),
-- mViewStyle(nullptr),
- mButtonStyle(nullptr),
- #endif
- mDefaultFontCached(false), mButtonFontCached(false),
-@@ -53,7 +52,6 @@ nsLookAndFeel::~nsLookAndFeel()
- g_object_unref(mStyle);
- #else
- g_object_unref(mBackgroundStyle);
-- g_object_unref(mViewStyle);
- g_object_unref(mButtonStyle);
- #endif
+ if (state->focused) {
+- if (interior_focus) {
+- GtkBorder border;
+- gtk_style_context_get_border(style, state_flags, &border);
+- x += border.left + focus_pad;
+- y += border.top + focus_pad;
+- width -= 2 * (border.left + focus_pad);
+- height -= 2 * (border.top + focus_pad);
+- } else {
+- x -= focus_width + focus_pad;
+- y -= focus_width + focus_pad;
+- width += 2 * (focus_width + focus_pad);
+- height += 2 * (focus_width + focus_pad);
+- }
+-
++ GtkBorder border;
++ gtk_style_context_get_border(style, state_flags, &border);
++ x += border.left;
++ y += border.top;
++ width -= (border.left + border.right);
++ height -= (border.top + border.bottom);
+ gtk_render_focus(style, cr, x, y, width, height);
+ }
+ gtk_style_context_restore(style);
+@@ -1056,33 +999,23 @@ calculate_button_inner_rect(GtkWidget* button, GdkRectangle* rect,
+ GtkTextDirection direction,
+ gboolean ignore_focus)
+ {
+- GtkBorder inner_border;
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+ GtkStyleContext* style;
+ GtkBorder border;
++ GtkBorder padding = {0, 0, 0, 0};
+
+ style = gtk_widget_get_style_context(button);
+
+ /* This mirrors gtkbutton's child positioning */
+- moz_gtk_button_get_inner_border(button, &inner_border);
+- moz_gtk_widget_get_focus(button, &interior_focus,
+- &focus_width, &focus_pad);
+-
+- if (ignore_focus)
+- focus_width = focus_pad = 0;
+-
+ gtk_style_context_get_border(style, 0, &border);
++ if (!ignore_focus)
++ gtk_style_context_get_padding(style, 0, &padding);
+
+- inner_rect->x = rect->x + border.left + focus_width + focus_pad;
+- inner_rect->x += direction == GTK_TEXT_DIR_LTR ?
+- inner_border.left : inner_border.right;
+- inner_rect->y = rect->y + inner_border.top + border.top +
+- focus_width + focus_pad;
+- inner_rect->width = MAX(1, rect->width - inner_border.left -
+- inner_border.right - (border.left + focus_pad + focus_width) * 2);
+- inner_rect->height = MAX(1, rect->height - inner_border.top -
+- inner_border.bottom - (border.top + focus_pad + focus_width) * 2);
++ inner_rect->x = rect->x + border.left + padding.left;
++ inner_rect->y = rect->y + padding.top + border.top;
++ inner_rect->width = MAX(1, rect->width - padding.left -
++ padding.right - border.left * 2);
++ inner_rect->height = MAX(1, rect->height - padding.top -
++ padding.bottom - border.top * 2);
+
+ return MOZ_GTK_SUCCESS;
}
-@@ -114,13 +112,19 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- case eColorID_IMESelectedRawTextBackground:
- case eColorID_IMESelectedConvertedTextBackground:
- case eColorID__moz_dragtargetzone:
-- aColor = sMozWindowSelectedBackground;
-+ case eColorID__moz_cellhighlight:
-+ case eColorID__moz_html_cellhighlight:
-+ case eColorID_highlight: // preference selected item,
-+ aColor = sTextSelectedBackground;
- break;
- case eColorID_WidgetSelectForeground:
- case eColorID_TextSelectForeground:
- case eColorID_IMESelectedRawTextForeground:
- case eColorID_IMESelectedConvertedTextForeground:
-- aColor = sMozWindowSelectedText;
-+ case eColorID_highlighttext:
-+ case eColorID__moz_cellhighlighttext:
-+ case eColorID__moz_html_cellhighlighttext:
-+ aColor = sTextSelectedText;
- break;
- #endif
- case eColorID_Widget3DHighlight:
-@@ -238,19 +242,6 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- GTK_STATE_FLAG_INSENSITIVE, &gdk_color);
- aColor = GDK_RGBA_TO_NS_RGBA(gdk_color);
- break;
-- case eColorID_highlight: // preference selected item,
-- // background of selected item
-- gtk_style_context_get_background_color(mViewStyle,
-- GTK_STATE_FLAG_SELECTED,
-- &gdk_color);
-- aColor = GDK_RGBA_TO_NS_RGBA(gdk_color);
-- break;
-- case eColorID_highlighttext:
-- // text of selected item
-- gtk_style_context_get_color(mViewStyle,
-- GTK_STATE_FLAG_SELECTED, &gdk_color);
-- aColor = GDK_RGBA_TO_NS_RGBA(gdk_color);
-- break;
- case eColorID_inactivecaption:
- // inactive window caption
- gtk_style_context_get_background_color(mBackgroundStyle,
-@@ -393,19 +384,6 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- case eColorID__moz_buttonhovertext:
- aColor = sButtonHoverText;
- break;
-- case eColorID__moz_cellhighlight:
-- case eColorID__moz_html_cellhighlight:
-- gtk_style_context_get_background_color(mViewStyle,
-- GTK_STATE_FLAG_SELECTED,
-- &gdk_color);
-- aColor = GDK_RGBA_TO_NS_RGBA(gdk_color);
-- break;
-- case eColorID__moz_cellhighlighttext:
-- case eColorID__moz_html_cellhighlighttext:
-- gtk_style_context_get_color(mViewStyle,
-- GTK_STATE_FLAG_SELECTED, &gdk_color);
-- aColor = GDK_RGBA_TO_NS_RGBA(gdk_color);
-- break;
- #endif
- case eColorID__moz_menuhover:
- aColor = sMenuHover;
-@@ -967,7 +945,7 @@ nsLookAndFeel::Init()
- GtkStyleContext *style;
+@@ -1457,19 +1390,12 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRectangle* rect,
+ {
+ gint x = rect->x, y = rect->y, width = rect->width, height = rect->height;
+ GtkStyleContext* style;
+- gboolean interior_focus;
+- gint focus_width;
+ int draw_focus_outline_only = state->depressed; // NS_THEME_FOCUS_OUTLINE
- // Gtk manages a screen's CSS in the settings object so we
-- // ask Gtk to create it explicitly. Otherwise we may end up
-+ // ask Gtk to create it explicitly. Otherwise we may end up
- // with wrong color theme, see Bug 972382
- (void)gtk_settings_get_for_screen(gdk_screen_get_default());
-
-@@ -977,9 +955,6 @@ nsLookAndFeel::Init()
- mBackgroundStyle = create_context(path);
- gtk_style_context_add_class(mBackgroundStyle, GTK_STYLE_CLASS_BACKGROUND);
-
-- mViewStyle = create_context(path);
-- gtk_style_context_add_class(mViewStyle, GTK_STYLE_CLASS_VIEW);
--
- mButtonStyle = create_context(path);
- gtk_style_context_add_class(mButtonStyle, GTK_STYLE_CLASS_BUTTON);
-
-@@ -992,11 +967,24 @@ nsLookAndFeel::Init()
- g_object_unref(style);
-
- // Text colors
-- gtk_style_context_get_background_color(mViewStyle, GTK_STATE_FLAG_NORMAL, &color);
-+ style = create_context(path);
-+ gtk_style_context_add_class(style, GTK_STYLE_CLASS_VIEW);
-+ gtk_style_context_get_background_color(style, GTK_STATE_FLAG_NORMAL, &color);
- sMozFieldBackground = GDK_RGBA_TO_NS_RGBA(color);
-- gtk_style_context_get_color(mViewStyle, GTK_STATE_FLAG_NORMAL, &color);
-+ gtk_style_context_get_color(style, GTK_STATE_FLAG_NORMAL, &color);
- sMozFieldText = GDK_RGBA_TO_NS_RGBA(color);
-
-+ // Selected text and background
-+ gtk_style_context_get_background_color(style,
-+ static_cast<GtkStateFlags>(GTK_STATE_FLAG_FOCUSED|GTK_STATE_FLAG_SELECTED),
-+ &color);
-+ sTextSelectedBackground = GDK_RGBA_TO_NS_RGBA(color);
-+ gtk_style_context_get_color(style,
-+ static_cast<GtkStateFlags>(GTK_STATE_FLAG_FOCUSED|GTK_STATE_FLAG_SELECTED),
-+ &color);
-+ sTextSelectedText = GDK_RGBA_TO_NS_RGBA(color);
-+ g_object_unref(style);
-+
- // Window colors
- style = create_context(path);
+ gtk_widget_set_direction(widget, direction);
+
+ style = gtk_widget_get_style_context(widget);
+
+- gtk_widget_style_get(widget,
+- "interior-focus", &interior_focus,
+- "focus-line-width", &focus_width,
+- NULL);
+-
+ if (draw_focus_outline_only) {
+ // Inflate the given 'rect' with the focus outline size.
+ gint h, v;
+@@ -1501,14 +1427,6 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRectangle* rect,
+ /* This will get us the lit borders that focused textboxes enjoy on
+ * some themes. */
+ gtk_style_context_set_state(style, GTK_STATE_FLAG_FOCUSED);
+- if (!interior_focus) {
+- /* Indent the border a little bit if we have exterior focus
+- (this is what GTK does to draw native entries) */
+- x += focus_width;
+- y += focus_width;
+- width -= 2 * focus_width;
+- height -= 2 * focus_width;
+- }
+ }
+
+ if (state->disabled) {
+@@ -1520,11 +1438,6 @@ moz_gtk_entry_paint(cairo_t *cr, GdkRectangle* rect,
+ }
+ gtk_render_frame(style, cr, x, y, width, height);
+
+- if (state->focused && !state->disabled) {
+- if (!interior_focus) {
+- gtk_render_focus(style, cr, rect->x, rect->y, rect->width, rect->height);
+- }
+- }
+ gtk_style_context_restore(style);
+
+ return MOZ_GTK_SUCCESS;
+@@ -1829,8 +1742,6 @@ moz_gtk_container_paint(cairo_t *cr, GdkRectangle* rect,
+ GtkStateFlags state_flags = GetStateFlagsFromGtkWidgetState(state);
+ GtkStyleContext* style;
+ GtkWidget *widget;
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+
+ if (isradio) {
+ ensure_radiobutton_widget();
+@@ -1843,7 +1754,6 @@ moz_gtk_container_paint(cairo_t *cr, GdkRectangle* rect,
+
+ style = gtk_widget_get_style_context(widget);
gtk_style_context_save(style);
-@@ -1005,12 +993,6 @@ nsLookAndFeel::Init()
- sMozWindowBackground = GDK_RGBA_TO_NS_RGBA(color);
- gtk_style_context_get_color(style, GTK_STATE_FLAG_NORMAL, &color);
- sMozWindowText = GDK_RGBA_TO_NS_RGBA(color);
--
-- // Selected text and background
-- gtk_style_context_get_background_color(style, GTK_STATE_FLAG_SELECTED, &color);
-- sMozWindowSelectedBackground = GDK_RGBA_TO_NS_RGBA(color);
-- gtk_style_context_get_color(style, GTK_STATE_FLAG_SELECTED, &color);
-- sMozWindowSelectedText = GDK_RGBA_TO_NS_RGBA(color);
+- moz_gtk_widget_get_focus(widget, &interior_focus, &focus_width, &focus_pad);
+ gtk_style_context_set_state(style, state_flags);
+
+ /* this is for drawing a prelight box */
+@@ -1852,10 +1762,6 @@ moz_gtk_container_paint(cairo_t *cr, GdkRectangle* rect,
+ rect->x, rect->y, rect->width, rect->height);
+ }
+
+- if (state->focused && !interior_focus) {
+- gtk_render_focus(style, cr,
+- rect->x, rect->y, rect->width, rect->height);
+- }
gtk_style_context_restore(style);
+
+ return MOZ_GTK_SUCCESS;
+@@ -1868,7 +1774,6 @@ moz_gtk_toggle_label_paint(cairo_t *cr, GdkRectangle* rect,
+ {
+ GtkStyleContext *style;
+ GtkWidget *widget;
+- gboolean interior_focus;
+
+ if (!state->focused)
+ return MOZ_GTK_SUCCESS;
+@@ -1889,10 +1794,6 @@ moz_gtk_toggle_label_paint(cairo_t *cr, GdkRectangle* rect,
+ }
+ gtk_widget_set_direction(widget, direction);
+
+- gtk_widget_style_get(widget, "interior-focus", &interior_focus, NULL);
+- if (!interior_focus)
+- return MOZ_GTK_SUCCESS;
+-
+ gtk_style_context_set_state(style, GetStateFlagsFromGtkWidgetState(state));
+ gtk_render_focus(style, cr,
+ rect->x, rect->y, rect->width, rect->height);
+@@ -2690,26 +2591,18 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ switch (widget) {
+ case MOZ_GTK_BUTTON:
+ {
+- GtkBorder inner_border;
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+-
+ ensure_button_widget();
++ style = gtk_widget_get_style_context(gButtonWidget);
++
+ *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(gButtonWidget));
+
+ /* Don't add this padding in HTML, otherwise the buttons will
+ become too big and stuff the layout. */
+ if (!inhtml) {
+- moz_gtk_widget_get_focus(gButtonWidget, &interior_focus, &focus_width, &focus_pad);
+- moz_gtk_button_get_inner_border(gButtonWidget, &inner_border);
+- *left += focus_width + focus_pad + inner_border.left;
+- *right += focus_width + focus_pad + inner_border.right;
+- *top += focus_width + focus_pad + inner_border.top;
+- *bottom += focus_width + focus_pad + inner_border.bottom;
++ moz_gtk_add_style_padding(style, left, top, right, bottom);
+ }
+
+- moz_gtk_add_style_border(gtk_widget_get_style_context(gButtonWidget),
+- left, top, right, bottom);
++ moz_gtk_add_style_border(style, left, top, right, bottom);
+ return MOZ_GTK_SUCCESS;
+ }
+ case MOZ_GTK_ENTRY:
+@@ -2717,7 +2610,13 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ ensure_entry_widget();
+ style = gtk_widget_get_style_context(gEntryWidget);
+ moz_gtk_add_style_border(style, left, top, right, bottom);
+- moz_gtk_add_style_padding(style, left, top, right, bottom);
++
++ /* Use the document padding in HTML
++ and GTK style padding in XUL. */
++ if (!inhtml) {
++ moz_gtk_add_style_padding(style, left, top, right, bottom);
++ }
++
+ return MOZ_GTK_SUCCESS;
+ }
+ case MOZ_GTK_TREEVIEW:
+@@ -2737,23 +2636,15 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ * assigned.
+ * That is why the following code is the same as for MOZ_GTK_BUTTON.
+ * */
+-
+- GtkBorder inner_border;
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
++ GtkStyleContext *style;
+
+ ensure_tree_header_cell_widget();
+ *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(gTreeHeaderCellWidget));
- // tooltip foreground and background
-@@ -1256,11 +1238,9 @@ nsLookAndFeel::RefreshImpl()
- mStyle = nullptr;
- #else
- g_object_unref(mBackgroundStyle);
-- g_object_unref(mViewStyle);
- g_object_unref(mButtonStyle);
-
- mBackgroundStyle = nullptr;
-- mViewStyle = nullptr;
- mButtonStyle = nullptr;
- #endif
-
-diff --git widget/gtk/nsLookAndFeel.h widget/gtk/nsLookAndFeel.h
-index aabbca6..7686cca 100644
---- widget/gtk/nsLookAndFeel.h
-+++ widget/gtk/nsLookAndFeel.h
-@@ -35,7 +35,6 @@ protected:
- struct _GtkStyle *mStyle;
- #else
- struct _GtkStyleContext *mBackgroundStyle;
-- struct _GtkStyleContext *mViewStyle;
- struct _GtkStyleContext *mButtonStyle;
- #endif
-
-@@ -75,8 +74,8 @@ protected:
- nscolor sMozFieldBackground;
- nscolor sMozWindowText;
- nscolor sMozWindowBackground;
-- nscolor sMozWindowSelectedText;
-- nscolor sMozWindowSelectedBackground;
-+ nscolor sTextSelectedText;
-+ nscolor sTextSelectedBackground;
- nscolor sMozScrollbar;
- char16_t sInvisibleCharacter;
- float sCaretRatio;
+- moz_gtk_widget_get_focus(gTreeHeaderCellWidget, &interior_focus, &focus_width, &focus_pad);
+- moz_gtk_button_get_inner_border(gTreeHeaderCellWidget, &inner_border);
+- *left += focus_width + focus_pad + inner_border.left;
+- *right += focus_width + focus_pad + inner_border.right;
+- *top += focus_width + focus_pad + inner_border.top;
+- *bottom += focus_width + focus_pad + inner_border.bottom;
+-
+- moz_gtk_add_style_border(gtk_widget_get_style_context(gTreeHeaderCellWidget),
+- left, top, right, bottom);
++ style = gtk_widget_get_style_context(gTreeHeaderCellWidget);
++
++ moz_gtk_add_style_border(style, left, top, right, bottom);
++ moz_gtk_add_style_padding(style, left, top, right, bottom);
+ return MOZ_GTK_SUCCESS;
+ }
+ case MOZ_GTK_TREE_HEADER_SORTARROW:
+@@ -2773,29 +2664,23 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ /* We need to account for the arrow on the dropdown, so text
+ * doesn't come too close to the arrow, or in some cases spill
+ * into the arrow. */
+- gboolean ignored_interior_focus, wide_separators;
+- gint focus_width, focus_pad, separator_width;
++ gboolean wide_separators;
++ gint separator_width;
+ GtkRequisition arrow_req;
+ GtkBorder border;
+
+ ensure_combo_box_widgets();
+
+- *left = gtk_container_get_border_width(GTK_CONTAINER(gComboBoxButtonWidget));
++ *left = *top = *right = *bottom =
++ gtk_container_get_border_width(GTK_CONTAINER(gComboBoxButtonWidget));
++
++ style = gtk_widget_get_style_context(gComboBoxButtonWidget);
+
+ if (!inhtml) {
+- moz_gtk_widget_get_focus(gComboBoxButtonWidget,
+- &ignored_interior_focus,
+- &focus_width, &focus_pad);
+- *left += focus_width + focus_pad;
++ moz_gtk_add_style_padding(style, left, top, right, bottom);
+ }
+
+- style = gtk_widget_get_style_context(gComboBoxButtonWidget);
+- gtk_style_context_get_border(style, 0, &border);
+-
+- *top = *left + border.top;
+- *left += border.left;
+-
+- *right = *left; *bottom = *top;
++ moz_gtk_add_style_border(style, left, top, right, bottom);
+
+ /* If there is no separator, don't try to count its width. */
+ separator_width = 0;
+@@ -2847,60 +2732,23 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ ensure_frame_widget();
+ w = gFrameWidget;
+ break;
+- case MOZ_GTK_CHECKBUTTON_LABEL:
+- case MOZ_GTK_RADIOBUTTON_LABEL:
+- {
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+-
+- /* If the focus is interior, then the label has a border of
+- (focus_width + focus_pad). */
+- if (widget == MOZ_GTK_CHECKBUTTON_LABEL) {
+- ensure_checkbox_widget();
+- moz_gtk_widget_get_focus(gCheckboxWidget, &interior_focus,
+- &focus_width, &focus_pad);
+- }
+- else {
+- ensure_radiobutton_widget();
+- moz_gtk_widget_get_focus(gRadiobuttonWidget, &interior_focus,
+- &focus_width, &focus_pad);
+- }
+-
+- if (interior_focus)
+- *left = *top = *right = *bottom = (focus_width + focus_pad);
+-
+- return MOZ_GTK_SUCCESS;
+- }
+-
+ case MOZ_GTK_CHECKBUTTON_CONTAINER:
+ case MOZ_GTK_RADIOBUTTON_CONTAINER:
+ {
+- gboolean interior_focus;
+- gint focus_width, focus_pad;
+-
+- /* If the focus is _not_ interior, then the container has a border
+- of (focus_width + focus_pad). */
+ if (widget == MOZ_GTK_CHECKBUTTON_CONTAINER) {
+ ensure_checkbox_widget();
+- moz_gtk_widget_get_focus(gCheckboxWidget, &interior_focus,
+- &focus_width, &focus_pad);
+ w = gCheckboxWidget;
+ } else {
+ ensure_radiobutton_widget();
+- moz_gtk_widget_get_focus(gRadiobuttonWidget, &interior_focus,
+- &focus_width, &focus_pad);
+ w = gRadiobuttonWidget;
+ }
++ style = gtk_widget_get_style_context(w);
+
+ *left = *top = *right = *bottom = gtk_container_get_border_width(GTK_CONTAINER(w));
+-
+- if (!interior_focus) {
+- *left += (focus_width + focus_pad);
+- *right += (focus_width + focus_pad);
+- *top += (focus_width + focus_pad);
+- *bottom += (focus_width + focus_pad);
+- }
+-
++ moz_gtk_add_style_border(style,
++ left, top, right, bottom);
++ moz_gtk_add_style_padding(style,
++ left, top, right, bottom);
+ return MOZ_GTK_SUCCESS;
+ }
+ case MOZ_GTK_MENUPOPUP:
+@@ -2927,6 +2775,8 @@ moz_gtk_get_widget_border(GtkThemeWidgetType widget, gint* left, gint* top,
+ return MOZ_GTK_SUCCESS;
+ }
+ /* These widgets have no borders, since they are not containers. */
++ case MOZ_GTK_CHECKBUTTON_LABEL:
++ case MOZ_GTK_RADIOBUTTON_LABEL:
+ case MOZ_GTK_SPLITTER_HORIZONTAL:
+ case MOZ_GTK_SPLITTER_VERTICAL:
+ case MOZ_GTK_CHECKBUTTON:
+diff --git widget/gtk/gtkdrawing.h widget/gtk/gtkdrawing.h
+index 1938e8f..5f71cfd 100644
+--- widget/gtk/gtkdrawing.h
++++ widget/gtk/gtkdrawing.h
+@@ -293,16 +293,6 @@ moz_gtk_checkbox_get_metrics(gint* indicator_size, gint* indicator_spacing);
+ gint
+ moz_gtk_radio_get_metrics(gint* indicator_size, gint* indicator_spacing);
+
+-/**
+- * Get the inner-border value for a GtkButton widget (button or tree header)
+- * widget: [IN] the widget to get the border value for
+- * inner_border: [OUT] the inner border
+- *
+- * returns: MOZ_GTK_SUCCESS if there was no error, an error code otherwise
+- */
+-gint
+-moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border);
+-
+ /** Get the extra size for the focus ring for outline:auto.
+ * widget: [IN] the widget to get the focus metrics for
+ * focus_h_width: [OUT] the horizontal width
+@@ -313,19 +303,6 @@ moz_gtk_button_get_inner_border(GtkWidget* widget, GtkBorder* inner_border);
+ gint
+ moz_gtk_get_focus_outline_size(gint* focus_h_width, gint* focus_v_width);
+
+-/** Get the focus metrics for a treeheadercell, button, checkbox, or radio button.
+- * widget: [IN] the widget to get the focus metrics for
+- * interior_focus: [OUT] whether the focus is drawn around the
+- * label (TRUE) or around the whole container (FALSE)
+- * focus_width: [OUT] the width of the focus line
+- * focus_pad: [OUT] the padding between the focus line and children
+- *
+- * returns: MOZ_GTK_SUCCESS if there was no error, an error code otherwise
+- */
+-gint
+-moz_gtk_widget_get_focus(GtkWidget* widget, gboolean* interior_focus,
+- gint* focus_width, gint* focus_pad);
+-
+ /** Get the horizontal padding for the menuitem widget or checkmenuitem widget.
+ * horizontal_padding: [OUT] The left and right padding of the menuitem or checkmenuitem
+ *
diff --git a/www/firefox/files/patch-bug1101582 b/www/firefox/files/patch-bug1101582
deleted file mode 100644
index d3abf8b62378..000000000000
--- a/www/firefox/files/patch-bug1101582
+++ /dev/null
@@ -1,82 +0,0 @@
-commit 8142810
-Author: Martin Stransky <stransky@redhat.com>
-Date: Thu Nov 27 04:08:00 2014 +0100
-
- Bug 1101582 - [GTK3] - Use window background color for ThreeDFace,ButtonFace. r=karlt
- This fixes missing borders on non-natively-styled textareas.
----
- widget/gtk/nsLookAndFeel.cpp | 21 ++++++++++-----------
- widget/gtk/nsLookAndFeel.h | 2 +-
- 2 files changed, 11 insertions(+), 12 deletions(-)
-
-diff --git widget/gtk/nsLookAndFeel.cpp widget/gtk/nsLookAndFeel.cpp
-index 93066b4..3562cf2 100644
---- widget/gtk/nsLookAndFeel.cpp
-+++ widget/gtk/nsLookAndFeel.cpp
-@@ -284,10 +284,17 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- #endif
- break;
-
-+ case eColorID_threedlightshadow:
-+ // 3-D highlighted inner edge color
-+ // always same as background in GTK code
- case eColorID_threedface:
- case eColorID_buttonface:
- // 3-D face color
-- aColor = sFrameBackground;
-+#if (MOZ_WIDGET_GTK == 3)
-+ aColor = sMozWindowBackground;
-+#else
-+ aColor = sButtonBackground;
-+#endif
- break;
-
- case eColorID_buttontext:
-@@ -302,11 +309,6 @@ nsLookAndFeel::NativeGetColor(ColorID aID, nscolor& aColor)
- aColor = sFrameOuterLightBorder;
- break;
-
-- case eColorID_threedlightshadow:
-- // 3-D highlighted inner edge color
-- aColor = sFrameBackground; // always same as background in GTK code
-- break;
--
- case eColorID_buttonshadow:
- // 3-D shadow edge color
- case eColorID_threedshadow:
-@@ -1141,7 +1143,7 @@ nsLookAndFeel::Init()
-
- style = gtk_widget_get_style(button);
- if (style) {
-- sFrameBackground = GDK_COLOR_TO_NS_RGB(style->bg[GTK_STATE_NORMAL]);
-+ sButtonBackground = GDK_COLOR_TO_NS_RGB(style->bg[GTK_STATE_NORMAL]);
- sFrameOuterLightBorder =
- GDK_COLOR_TO_NS_RGB(style->light[GTK_STATE_NORMAL]);
- sFrameInnerDarkBorder =
-@@ -1189,12 +1191,9 @@ nsLookAndFeel::Init()
- GtkWidget *frame = gtk_frame_new(nullptr);
- gtk_container_add(GTK_CONTAINER(parent), frame);
-
-- style = gtk_widget_get_style_context(frame);
-- gtk_style_context_get_background_color(style, GTK_STATE_FLAG_NORMAL, &color);
-- sFrameBackground = GDK_RGBA_TO_NS_RGBA(color);
--
- // TODO GTK3 - update sFrameOuterLightBorder
- // for GTK_BORDER_STYLE_INSET/OUTSET/GROVE/RIDGE border styles (Bug 978172).
-+ style = gtk_widget_get_style_context(frame);
- gtk_style_context_get_border_color(style, GTK_STATE_FLAG_NORMAL, &color);
- sFrameInnerDarkBorder = sFrameOuterLightBorder = GDK_RGBA_TO_NS_RGBA(color);
- #endif
-diff --git widget/gtk/nsLookAndFeel.h widget/gtk/nsLookAndFeel.h
-index be15179..aabbca6 100644
---- widget/gtk/nsLookAndFeel.h
-+++ widget/gtk/nsLookAndFeel.h
-@@ -64,7 +64,7 @@ protected:
- nscolor sMenuHoverText;
- nscolor sButtonText;
- nscolor sButtonHoverText;
-- nscolor sFrameBackground;
-+ nscolor sButtonBackground;
- nscolor sFrameOuterLightBorder;
- nscolor sFrameInnerDarkBorder;
- nscolor sOddCellBackground;
diff --git a/www/firefox/files/patch-bug1103858 b/www/firefox/files/patch-bug1103858
deleted file mode 100644
index 16cfd9973a86..000000000000
--- a/www/firefox/files/patch-bug1103858
+++ /dev/null
@@ -1,42 +0,0 @@
-diff --git configure.in configure.in
-index b2b45e7..dcfdfb7 100644
---- configure.in
-+++ configure.in
-@@ -8346,7 +8346,7 @@ case "$OS_TARGET" in
- NECKO_WIFI=1
- fi
- ;;
-- Darwin|FreeBSD|SunOS|WINNT)
-+ Darwin|DragonFly|FreeBSD|SunOS|WINNT)
- NECKO_WIFI=1
- ;;
- Linux)
-diff --git netwerk/wifi/moz.build netwerk/wifi/moz.build
-index d4de063..3949380 100644
---- netwerk/wifi/moz.build
-+++ netwerk/wifi/moz.build
-@@ -35,7 +35,7 @@ if CONFIG['OS_ARCH'] == 'Darwin':
- UNIFIED_SOURCES += [
- 'osx_corewlan.mm',
- ]
--elif CONFIG['OS_ARCH'] == 'FreeBSD':
-+elif CONFIG['OS_ARCH'] in ('DragonFly', 'FreeBSD'):
- UNIFIED_SOURCES += [
- 'nsWifiScannerFreeBSD.cpp',
- ]
-diff --git netwerk/wifi/nsWifiScannerFreeBSD.cpp netwerk/wifi/nsWifiScannerFreeBSD.cpp
-index bdf171e..4185d69 100644
---- netwerk/wifi/nsWifiScannerFreeBSD.cpp
-+++ netwerk/wifi/nsWifiScannerFreeBSD.cpp
-@@ -13,7 +13,11 @@
- #include <sys/socket.h>
- #include <net/if.h>
- #include <net/if_media.h>
-+#ifdef __DragonFly__
-+#include <netproto/802_11/ieee80211_ioctl.h>
-+#else
- #include <net80211/ieee80211_ioctl.h>
-+#endif
-
- #include <ifaddrs.h>
- #include <string.h>
diff --git a/www/firefox/files/patch-bug1128161 b/www/firefox/files/patch-bug1128161
deleted file mode 100644
index d61cbb3ceec0..000000000000
--- a/www/firefox/files/patch-bug1128161
+++ /dev/null
@@ -1,28 +0,0 @@
-commit 6af7f0e6
-Author: Chris Double <chris.double@double.co.nz>
-Date: Tue Feb 3 11:20:17 2015 +1300
-
- Bug 1128161 - Fix build error when logging is disabled - r=ajones
----
- dom/media/mediasource/MediaSourceUtils.cpp | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git dom/media/mediasource/MediaSourceUtils.cpp dom/media/mediasource/MediaSourceUtils.cpp
-index 44a40f5..83bba60 100644
---- dom/media/mediasource/MediaSourceUtils.cpp
-+++ dom/media/mediasource/MediaSourceUtils.cpp
-@@ -11,7 +11,6 @@
-
- namespace mozilla {
-
--#if defined(PR_LOGGING)
- nsCString
- DumpTimeRanges(dom::TimeRanges* aRanges)
- {
-@@ -31,6 +30,5 @@ DumpTimeRanges(dom::TimeRanges* aRanges)
-
- return dump;
- }
--#endif
-
- } // namespace mozilla
diff --git a/www/firefox/files/patch-bug1138845 b/www/firefox/files/patch-bug1138845
new file mode 100644
index 000000000000..12a9542f538f
--- /dev/null
+++ b/www/firefox/files/patch-bug1138845
@@ -0,0 +1,134 @@
+commit 4b5b332
+Author: Mike Hommey <mh+mozilla@glandium.org>
+Date: Tue Mar 3 18:41:13 2015 +0900
+
+ Bug 1138845 - Don't require atk-bridge for gtk+3 builds. r=tbsaunde
+---
+ accessible/atk/Platform.cpp | 29 +++++++++++++++++++----------
+ config/system-headers | 1 -
+ configure.in | 2 +-
+ 3 files changed, 20 insertions(+), 12 deletions(-)
+
+diff --git accessible/atk/Platform.cpp accessible/atk/Platform.cpp
+index a2afd96..2ed5e0b 100644
+--- accessible/atk/Platform.cpp
++++ accessible/atk/Platform.cpp
+@@ -18,8 +18,9 @@
+ #include <dbus/dbus.h>
+ #endif
+ #include <gtk/gtk.h>
++
+ #if (MOZ_WIDGET_GTK == 3)
+-#include <atk-bridge.h>
++extern "C" __attribute__((weak,visibility("default"))) int atk_bridge_adaptor_init(int*, char **[]);
+ #endif
+
+ using namespace mozilla;
+@@ -46,7 +47,6 @@ static gulong sToplevel_hide_hook = 0;
+
+ GType g_atk_hyperlink_impl_type = G_TYPE_INVALID;
+
+-#if (MOZ_WIDGET_GTK == 2)
+ struct GnomeAccessibilityModule
+ {
+ const char *libName;
+@@ -67,11 +67,13 @@ static GnomeAccessibilityModule sAtkBridge = {
+ "gnome_accessibility_module_shutdown", nullptr
+ };
+
++#if (MOZ_WIDGET_GTK == 2)
+ static GnomeAccessibilityModule sGail = {
+ "libgail.so", nullptr,
+ "gnome_accessibility_module_init", nullptr,
+ "gnome_accessibility_module_shutdown", nullptr
+ };
++#endif
+
+ static nsresult
+ LoadGtkModule(GnomeAccessibilityModule& aModule)
+@@ -98,7 +100,11 @@ LoadGtkModule(GnomeAccessibilityModule& aModule)
+ else
+ subLen = loc2 - loc1;
+ nsAutoCString sub(Substring(libPath, loc1, subLen));
++#if (MOZ_WIDGET_GTK == 2)
+ sub.AppendLiteral("/gtk-2.0/modules/");
++#else
++ sub.AppendLiteral("/gtk-3.0/modules/");
++#endif
+ sub.Append(aModule.libName);
+ aModule.lib = PR_LoadLibrary(sub.get());
+ if (aModule.lib)
+@@ -123,7 +129,6 @@ LoadGtkModule(GnomeAccessibilityModule& aModule)
+ }
+ return NS_OK;
+ }
+-#endif // (MOZ_WIDGET_GTK == 2)
+
+ void
+ a11y::PlatformInit()
+@@ -175,14 +180,17 @@ a11y::PlatformInit()
+
+ // Init atk-bridge now
+ PR_SetEnv("NO_AT_BRIDGE=0");
+-#if (MOZ_WIDGET_GTK == 2)
+- rv = LoadGtkModule(sAtkBridge);
+- if (NS_SUCCEEDED(rv)) {
+- (*sAtkBridge.init)();
+- }
+-#else
+- atk_bridge_adaptor_init(nullptr, nullptr);
++#if (MOZ_WIDGET_GTK == 3)
++ if (atk_bridge_adaptor_init) {
++ atk_bridge_adaptor_init(nullptr, nullptr);
++ } else
+ #endif
++ {
++ nsresult rv = LoadGtkModule(sAtkBridge);
++ if (NS_SUCCEEDED(rv)) {
++ (*sAtkBridge.init)();
++ }
++ }
+
+ if (!sToplevel_event_hook_added) {
+ sToplevel_event_hook_added = true;
+@@ -210,7 +218,6 @@ a11y::PlatformShutdown()
+ sToplevel_hide_hook);
+ }
+
+-#if (MOZ_WIDGET_GTK == 2)
+ if (sAtkBridge.lib) {
+ // Do not shutdown/unload atk-bridge,
+ // an exit function registered will take care of it
+@@ -221,6 +228,7 @@ a11y::PlatformShutdown()
+ sAtkBridge.init = nullptr;
+ sAtkBridge.shutdown = nullptr;
+ }
++#if (MOZ_WIDGET_GTK == 2)
+ if (sGail.lib) {
+ // Do not shutdown gail because
+ // 1) Maybe it's not init-ed by us. e.g. GtkEmbed
+diff --git config/system-headers config/system-headers
+index 2c94a7d..cf01775 100644
+--- config/system-headers
++++ config/system-headers
+@@ -189,7 +189,6 @@ asm/signal.h
+ ASRegistry.h
+ assert.h
+ atk/atk.h
+-atk-bridge.h
+ atlcom.h
+ atlconv.h
+ atlctl.cpp
+diff --git configure.in configure.in
+index 0bd1eb7..f3b3365 100644
+--- configure.in
++++ configure.in
+@@ -4408,7 +4408,7 @@ fi
+
+ if test "$COMPILE_ENVIRONMENT"; then
+ if test "$MOZ_ENABLE_GTK3"; then
+- PKG_CHECK_MODULES(MOZ_GTK3, gtk+-3.0 >= $GTK3_VERSION gtk+-unix-print-3.0 glib-2.0 gobject-2.0 atk-bridge-2.0 $GDK_PACKAGES)
++ PKG_CHECK_MODULES(MOZ_GTK3, gtk+-3.0 >= $GTK3_VERSION gtk+-unix-print-3.0 glib-2.0 gobject-2.0 $GDK_PACKAGES)
+ MOZ_GTK3_CFLAGS="-I${_topsrcdir}/widget/gtk/compat-gtk3 $MOZ_GTK3_CFLAGS"
+ dnl Contrary to MOZ_GTK2_LIBS, MOZ_GTK3_LIBS needs to be literally added to TK_LIBS instead
+ dnl of a make reference because of how TK_LIBS is mangled in toolkit/library/moz.build
diff --git a/www/firefox/files/patch-bug1143686 b/www/firefox/files/patch-bug1143686
new file mode 100644
index 000000000000..d4cc2834d67e
--- /dev/null
+++ b/www/firefox/files/patch-bug1143686
@@ -0,0 +1,46 @@
+commit e50e738
+Author: Martin Stransky <stransky@redhat.com>
+Date: Mon Mar 16 08:00:00 2015 -0400
+
+ Bug 1143686 - Gtk3 - Render scrollbar thumb with margin. r=karlt
+---
+ widget/gtk/gtk3drawing.c | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git widget/gtk/gtk3drawing.c widget/gtk/gtk3drawing.c
+index 17f46ab..08a58d6 100644
+--- widget/gtk/gtk3drawing.c
++++ widget/gtk/gtk3drawing.c
+@@ -1230,6 +1230,7 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWidgetType widget,
+ GtkStyleContext* style;
+ GtkScrollbar *scrollbar;
+ GtkAdjustment *adj;
++ GtkBorder margin;
+
+ ensure_scrollbar_widget();
+
+@@ -1239,15 +1240,20 @@ moz_gtk_scrollbar_thumb_paint(GtkThemeWidgetType widget,
+ scrollbar = GTK_SCROLLBAR(gVertScrollbarWidget);
+
+ gtk_widget_set_direction(GTK_WIDGET(scrollbar), direction);
+-
++
+ style = gtk_widget_get_style_context(GTK_WIDGET(scrollbar));
+ gtk_style_context_save(style);
+-
++
+ gtk_style_context_add_class(style, GTK_STYLE_CLASS_SLIDER);
+ gtk_style_context_set_state(style, state_flags);
+
+- gtk_render_slider(style, cr, rect->x, rect->y,
+- rect->width, rect->height,
++ gtk_style_context_get_margin (style, state_flags, &margin);
++
++ gtk_render_slider(style, cr,
++ rect->x + margin.left,
++ rect->y + margin.top,
++ rect->width - margin.left - margin.right,
++ rect->height - margin.top - margin.bottom,
+ (widget == MOZ_GTK_SCROLLBAR_THUMB_HORIZONTAL) ?
+ GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL);
+
diff --git a/www/firefox/files/patch-bug1144643 b/www/firefox/files/patch-bug1144643
new file mode 100644
index 000000000000..fe8150ba182c
--- /dev/null
+++ b/www/firefox/files/patch-bug1144643
@@ -0,0 +1,33 @@
+commit a0ccc19
+Author: Martin Stransky <stransky@redhat.com>
+Date: Wed Mar 18 07:14:00 2015 -0400
+
+ Bug 1144643 - Render tooltips as transparent on Gtk3. r=karlt
+
+ --HG--
+ extra : rebase_source : 23085532b27350ca71cbe18db071628388003f33
+---
+ widget/gtk/nsNativeThemeGTK.cpp | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git widget/gtk/nsNativeThemeGTK.cpp widget/gtk/nsNativeThemeGTK.cpp
+index e5e1867..26d13a5 100644
+--- widget/gtk/nsNativeThemeGTK.cpp
++++ widget/gtk/nsNativeThemeGTK.cpp
+@@ -1528,9 +1528,15 @@ nsNativeThemeGTK::GetWidgetTransparency(nsIFrame* aFrame, uint8_t aWidgetType)
+ case NS_THEME_MENUPOPUP:
+ case NS_THEME_WINDOW:
+ case NS_THEME_DIALOG:
+- // Tooltips use gtk_paint_flat_box().
++ return eOpaque;
++ // Tooltips use gtk_paint_flat_box() on Gtk2
++ // but are shaped on Gtk3
+ case NS_THEME_TOOLTIP:
++#if (MOZ_WIDGET_GTK == 2)
+ return eOpaque;
++#else
++ return eTransparent;
++#endif
+ }
+
+ return eUnknownTransparency;
diff --git a/www/firefox/files/patch-bug779713 b/www/firefox/files/patch-bug779713
index 37e0bc2fb5c0..aad910191c5d 100644
--- a/www/firefox/files/patch-bug779713
+++ b/www/firefox/files/patch-bug779713
@@ -47,14 +47,14 @@ diff --git mfbt/Attributes.h mfbt/Attributes.h
index d317766..ddb13da 100644
--- mfbt/Attributes.h
+++ mfbt/Attributes.h
-@@ -51,6 +51,7 @@
+@@ -50,6 +50,7 @@
+ * don't indicate support for them here, due to
* http://stackoverflow.com/questions/20498142/visual-studio-2013-explicit-keyword-bug
*/
- # if _MSC_VER >= 1800
-+# define MOZ_HAVE_CXX11_ALIGNAS
- # define MOZ_HAVE_CXX11_DELETE
- # endif
- # if _MSC_VER >= 1700
++# define MOZ_HAVE_CXX11_ALIGNAS
+ # define MOZ_HAVE_CXX11_FINAL final
+ # define MOZ_HAVE_CXX11_OVERRIDE
+ # define MOZ_HAVE_NEVER_INLINE __declspec(noinline)
@@ -74,6 +75,9 @@
# ifndef __has_extension
# define __has_extension __has_feature /* compatibility, for older versions of clang */
diff --git a/www/firefox/files/patch-bug899126 b/www/firefox/files/patch-bug899126
deleted file mode 100644
index 70a254c701b5..000000000000
--- a/www/firefox/files/patch-bug899126
+++ /dev/null
@@ -1,98 +0,0 @@
-commit 0f63381
-Author: Guilherme Goncalves <guilherme.p.gonc@gmail.com>
-Date: Tue Nov 18 14:03:00 2014 -0800
-
- Bug 899126 - Part 1 - Implement bin_unused for jemalloc3. r=glandium
----
- memory/build/mozjemalloc_compat.c | 57 ++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 56 insertions(+), 1 deletion(-)
-
-diff --git memory/build/mozjemalloc_compat.c memory/build/mozjemalloc_compat.c
-index 70265a7..0a9b21a 100644
---- memory/build/mozjemalloc_compat.c
-+++ memory/build/mozjemalloc_compat.c
-@@ -12,6 +12,8 @@
- #include "jemalloc_types.h"
- #include "mozilla/Types.h"
-
-+#include <stdbool.h>
-+
- #if defined(MOZ_NATIVE_JEMALLOC)
-
- MOZ_IMPORT_API int
-@@ -47,6 +49,16 @@ je_(nallocm)(size_t *rsize, size_t size, int flags);
- je_(mallctlbymib)(mib, miblen, &v, &sz, NULL, 0); \
- } while (0)
-
-+#define CTL_IJ_GET(n, v, i, j) do { \
-+ size_t mib[6]; \
-+ size_t miblen = sizeof(mib) / sizeof(mib[0]); \
-+ size_t sz = sizeof(v); \
-+ je_(mallctlnametomib)(n, mib, &miblen); \
-+ mib[2] = i; \
-+ mib[4] = j; \
-+ je_(mallctlbymib)(mib, miblen, &v, &sz, NULL, 0); \
-+} while (0)
-+
- MOZ_MEMORY_API size_t
- malloc_good_size_impl(size_t size)
- {
-@@ -61,6 +73,48 @@ malloc_good_size_impl(size_t size)
- return size;
- }
-
-+static size_t
-+compute_bin_unused(unsigned int narenas)
-+{
-+ size_t bin_unused = 0;
-+
-+ uint32_t nregs; // number of regions per run in the j-th bin
-+ size_t reg_size; // size of regions served by the j-th bin
-+ size_t curruns; // number of runs belonging to a bin
-+ size_t curregs; // number of allocated regions in a bin
-+
-+ unsigned int nbins; // number of bins per arena
-+ unsigned int i, j;
-+
-+ // curruns and curregs are not defined for uninitialized arenas,
-+ // so we skip them when computing bin_unused. However, initialized
-+ // arenas are not guaranteed to be sequential, so we must test each
-+ // one when iterating below.
-+ bool initialized[100]; // should be narenas, but MSVC doesn't have VLAs
-+ size_t isz = sizeof(initialized) / sizeof(initialized[0]);
-+
-+ je_(mallctl)("arenas.initialized", initialized, &isz, NULL, 0);
-+ CTL_GET("arenas.nbins", nbins);
-+
-+ for (j = 0; j < nbins; j++) {
-+ CTL_I_GET("arenas.bin.0.nregs", nregs, j);
-+ CTL_I_GET("arenas.bin.0.size", reg_size, j);
-+
-+ for (i = 0; i < narenas; i++) {
-+ if (!initialized[i]) {
-+ continue;
-+ }
-+
-+ CTL_IJ_GET("stats.arenas.0.bins.0.curruns", curruns, i, j);
-+ CTL_IJ_GET("stats.arenas.0.bins.0.curregs", curregs, i, j);
-+
-+ bin_unused += (nregs * curruns - curregs) * reg_size;
-+ }
-+ }
-+
-+ return bin_unused;
-+}
-+
- MOZ_JEMALLOC_API void
- jemalloc_stats_impl(jemalloc_stats_t *stats)
- {
-@@ -93,7 +147,8 @@ jemalloc_stats_impl(jemalloc_stats_t *stats)
- // We could get this value out of base.c::base_pages, but that really should
- // be an upstream change, so don't worry about it for now.
- stats->bookkeeping = 0;
-- stats->bin_unused = 0;
-+
-+ stats->bin_unused = compute_bin_unused(narenas);
- }
-
- MOZ_JEMALLOC_API void
diff --git a/www/firefox/files/patch-system-openh264 b/www/firefox/files/patch-system-openh264
index 5215ddb43475..d51644631776 100644
--- a/www/firefox/files/patch-system-openh264
+++ b/www/firefox/files/patch-system-openh264
@@ -101,33 +101,60 @@ index 9593492..470384b 100644
this._deferred.resolve(extractedPaths);
}, err => {
this._deferred.reject(err);
-diff --git toolkit/mozapps/extensions/internal/OpenH264Provider.jsm toolkit/mozapps/extensions/internal/OpenH264Provider.jsm
+diff --git toolkit/mozapps/extensions/internal/GMPProvider.jsm toolkit/mozapps/extensions/internal/GMPProvider.jsm
index 1f3a0b1..93517be 100644
---- toolkit/mozapps/extensions/internal/OpenH264Provider.jsm
-+++ toolkit/mozapps/extensions/internal/OpenH264Provider.jsm
-@@ -29,6 +29,7 @@
- const OPENH264_PLUGIN_ID = "gmp-gmpopenh264";
- const OPENH264_PREF_BRANCH = "media." + OPENH264_PLUGIN_ID + ".";
- const OPENH264_PREF_ENABLED = "enabled";
-+const OPENH264_PREF_PATH = "path";
- const OPENH264_PREF_VERSION = "version";
- const OPENH264_PREF_LASTUPDATE = "lastUpdate";
- const OPENH264_PREF_AUTOUPDATE = "autoupdate";
-@@ -93,7 +94,12 @@
-
- get description() { return pluginsBundle.GetStringFromName("openH264_description"); },
+--- toolkit/mozapps/extensions/internal/GMPProvider.jsm
++++ toolkit/mozapps/extensions/internal/GMPProvider.jsm
+@@ -40,6 +40,7 @@ const KEY_LOGGING_LEVEL = KEY_LOG_B
+ const KEY_LOGGING_DUMP = KEY_LOG_BASE + "dump";
+ const KEY_EME_ENABLED = "media.eme.enabled"; // Global pref to enable/disable all EME plugins
+ const KEY_PLUGIN_ENABLED = "media.{0}.enabled";
++const KEY_PLUGIN_PATH = "media.{0}.path";
+ const KEY_PLUGIN_LAST_UPDATE = "media.{0}.lastUpdate";
+ const KEY_PLUGIN_VERSION = "media.{0}.version";
+ const KEY_PLUGIN_AUTOUPDATE = "media.{0}.autoupdate";
+@@ -165,8 +166,8 @@ function GMPWrapper(aPluginInfo) {
+ this._plugin.id + ") ");
+ Preferences.observe(GMPPrefs.getPrefKey(KEY_PLUGIN_ENABLED, this._plugin.id),
+ this.onPrefEnabledChanged, this);
+- Preferences.observe(GMPPrefs.getPrefKey(KEY_PLUGIN_VERSION, this._plugin.id),
+- this.onPrefVersionChanged, this);
++ Preferences.observe(GMPPrefs.getPrefKey(KEY_PLUGIN_PATH, this._plugin.id),
++ this.onPrefPathChanged, this);
+ if (this._plugin.isEME) {
+ Preferences.observe(GMPPrefs.getPrefKey(KEY_EME_ENABLED, this._plugin.id),
+ this.onPrefEnabledChanged, this);
+@@ -183,11 +184,8 @@ GMPWrapper.prototype = {
+
+ set gmpPath(aPath) { this._gmpPath = aPath; },
+ get gmpPath() {
+- if (!this._gmpPath && this.isInstalled) {
+- this._gmpPath = OS.Path.join(OS.Constants.Path.profileDir,
+- this._plugin.id,
+- GMPPrefs.get(KEY_PLUGIN_VERSION, null,
+- this._plugin.id));
++ if (!this._gmpPath) {
++ this._gmpPath = GMPPrefs.get(KEY_PLUGIN_PATH, null, this._plugin.id);
+ }
+ return this._gmpPath;
+ },
+@@ -202,8 +200,13 @@ GMPWrapper.prototype = {
+ get description() { return this._plugin.description; },
+ get fullDescription() { return this._plugin.fullDescription; },
-- get version() { return prefs.get(OPENH264_PREF_VERSION, ""); },
-+ get version() {
+- get version() { return GMPPrefs.get(KEY_PLUGIN_VERSION, null,
+- this._plugin.id); },
++ get version() {
+ if (this.isInstalled) {
-+ return prefs.get(OPENH264_PREF_VERSION, "");
++ return GMPPrefs.get(KEY_PLUGIN_VERSION, null,
++ this._plugin.id);
+ }
-+ return "";
++ return null;
+ },
get isActive() { return !this.userDisabled; },
get appDisabled() { return false; },
-@@ -217,24 +223,17 @@
+@@ -346,24 +349,17 @@ GMPWrapper.prototype = {
get pluginMimeTypes() { return []; },
get pluginLibraries() {
@@ -136,86 +163,67 @@ index 1f3a0b1..93517be 100644
- return [path];
- }
- return [];
-+ let path = prefs.get(OPENH264_PREF_PATH, null);
++ let path = GMPPrefs.get(KEY_PLUGIN_PATH, null, this._plugin.id);
+ return path && path.length ? [OS.Path.basename(path)] : [];
},
get pluginFullpath() {
- if (this.isInstalled) {
- let path = OS.Path.join(OS.Constants.Path.profileDir,
-- OPENH264_PLUGIN_ID,
+- this._plugin.id,
- this.version);
- return [path];
- }
- return [];
-+ let path = prefs.get(OPENH264_PREF_PATH, null);
++ let path = GMPPrefs.get(KEY_PLUGIN_PATH, null, this._plugin.id);
+ return path && path.length ? [path] : [];
},
get isInstalled() {
-- return this.version.length > 0;
-+ let path = prefs.get(OPENH264_PREF_PATH, "");
-+ return path.length > 0;
+- return this.version && this.version.length > 0;
++ let path = GMPPrefs.get(KEY_PLUGIN_PATH, null, this._plugin.id);
++ return path && path.length > 0;
},
- };
-
-@@ -245,19 +244,14 @@
- "OpenH264Provider" + "::");
- OpenH264Wrapper._log = Log.repository.getLoggerWithMessagePrefix("Toolkit.OpenH264Provider",
- "OpenH264Wrapper" + "::");
-- this.gmpPath = null;
-- if (OpenH264Wrapper.isInstalled) {
-- this.gmpPath = OS.Path.join(OS.Constants.Path.profileDir,
-- OPENH264_PLUGIN_ID,
-- prefs.get(OPENH264_PREF_VERSION, null));
-- }
-+ this.gmpPath = prefs.get(OPENH264_PREF_PATH, null);
- let enabled = prefs.get(OPENH264_PREF_ENABLED, true);
- this._log.trace("startup() - enabled=" + enabled + ", gmpPath="+this.gmpPath);
-
- Services.obs.addObserver(this, AddonManager.OPTIONS_NOTIFICATION_DISPLAYED, false);
- prefs.observe(OPENH264_PREF_ENABLED, this.onPrefEnabledChanged, this);
-- prefs.observe(OPENH264_PREF_VERSION, this.onPrefVersionChanged, this);
-+ prefs.observe(OPENH264_PREF_PATH, this.onPrefPathChanged, this);
- prefs.observe(OPENH264_PREF_LOGGING, configureLogging);
-
- if (this.gmpPath && enabled) {
-@@ -270,7 +264,7 @@
- this._log.trace("shutdown()");
- Services.obs.removeObserver(this, AddonManager.OPTIONS_NOTIFICATION_DISPLAYED);
- prefs.ignore(OPENH264_PREF_ENABLED, this.onPrefEnabledChanged, this);
-- prefs.ignore(OPENH264_PREF_VERSION, this.onPrefVersionChanged, this);
-+ prefs.ignore(OPENH264_PREF_PATH, this.onPrefPathChanged, this);
- prefs.ignore(OPENH264_PREF_LOGGING, configureLogging);
-
- return OpenH264Wrapper._updateTask;
-@@ -296,25 +290,20 @@
- wrapper);
+ onPrefEnabledChanged: function() {
+@@ -386,10 +382,10 @@ GMPWrapper.prototype = {
+ this);
},
- onPrefVersionChanged: function() {
+ onPrefPathChanged: function() {
- let wrapper = OpenH264Wrapper;
-
- AddonManagerPrivate.callAddonListeners("onUninstalling", wrapper, false);
- if (this.gmpPath) {
-- this._log.info("onPrefVersionChanged() - unregistering gmp directory " + this.gmpPath);
-+ this._log.info("onPrefPathChanged() - removing gmp directory " + this.gmpPath);
- gmpService.removePluginDirectory(this.gmpPath);
+ AddonManagerPrivate.callAddonListeners("onUninstalling", this, false);
+ if (this._gmpPath) {
+- this._log.info("onPrefVersionChanged() - unregistering gmp directory " +
++ this._log.info("onPrefPathChanged() - unregistering gmp directory " +
+ this._gmpPath);
+ gmpService.removePluginDirectory(this._gmpPath);
}
- AddonManagerPrivate.callAddonListeners("onUninstalled", wrapper);
+@@ -397,15 +393,9 @@ GMPWrapper.prototype = {
- AddonManagerPrivate.callInstallListeners("onExternalInstall", null, wrapper, null, false);
-- this.gmpPath = null;
-- if (OpenH264Wrapper.isInstalled) {
-- this.gmpPath = OS.Path.join(OS.Constants.Path.profileDir,
-- OPENH264_PLUGIN_ID,
-- prefs.get(OPENH264_PREF_VERSION, null));
+ AddonManagerPrivate.callInstallListeners("onExternalInstall", null, this,
+ null, false);
+- this._gmpPath = null;
+- if (this.isInstalled) {
+- this._gmpPath = OS.Path.join(OS.Constants.Path.profileDir,
+- this._plugin.id,
+- GMPPrefs.get(KEY_PLUGIN_VERSION, null,
+- this._plugin.id));
- }
-+ this.gmpPath = prefs.get(OPENH264_PREF_PATH, null);
- if (this.gmpPath && wrapper.isActive) {
-- this._log.info("onPrefVersionChanged() - registering gmp directory " + this.gmpPath);
-+ this._log.info("onPrefPathChanged() - adding gmp directory " + this.gmpPath);
- gmpService.addPluginDirectory(this.gmpPath);
++ this._gmpPath = GMPPrefs.get(KEY_PLUGIN_PATH, null, this._plugin.id);
+ if (this._gmpPath && this.isActive) {
+- this._log.info("onPrefVersionChanged() - registering gmp directory " +
++ this._log.info("onPrefPathChanged() - registering gmp directory " +
+ this._gmpPath);
+ gmpService.addPluginDirectory(this._gmpPath);
}
- AddonManagerPrivate.callAddonListeners("onInstalled", wrapper);
+@@ -415,8 +405,8 @@ GMPWrapper.prototype = {
+ shutdown: function() {
+ Preferences.ignore(GMPPrefs.getPrefKey(KEY_PLUGIN_ENABLED, this._plugin.id),
+ this.onPrefEnabledChanged, this);
+- Preferences.ignore(GMPPrefs.getPrefKey(KEY_PLUGIN_VERSION, this._plugin.id),
+- this.onPrefVersionChanged, this);
++ Preferences.ignore(GMPPrefs.getPrefKey(KEY_PLUGIN_PATH, this._plugin.id),
++ this.onPrefPathChanged, this);
+ if (this._isEME) {
+ Preferences.ignore(GMPPrefs.getPrefKey(KEY_EME_ENABLED, this._plugin.id),
+ this.onPrefEnabledChanged, this);
diff --git a/www/firefox/files/patch-z-bug517422 b/www/firefox/files/patch-z-bug517422
index f837f2db6735..374364907ca0 100644
--- a/www/firefox/files/patch-z-bug517422
+++ b/www/firefox/files/patch-z-bug517422
@@ -22,14 +22,17 @@ diff --git config/external/moz.build config/external/moz.build
index f67c5c7..eb909ce 100644
--- config/external/moz.build
+++ config/external/moz.build
-@@ -16,13 +16,19 @@ if CONFIG['MOZ_UPDATER']:
- if not CONFIG['MOZ_NATIVE_BZ2']:
- external_dirs += ['modules/libbz2']
+@@ -19,10 +19,19 @@ if CONFIG['MOZ_UPDATER']:
+ # There's no "native brotli" yet, but probably in the future...
+ external_dirs += ['modules/brotli']
-if CONFIG['MOZ_VORBIS']:
+if not CONFIG['MOZ_NATIVE_OGG']:
+ external_dirs += ['media/libogg']
+
++if not CONFIG['MOZ_NATIVE_OPUS']:
++ external_dirs += ['media/libopus']
++
+if not CONFIG['MOZ_NATIVE_THEORA']:
+ external_dirs += ['media/libtheora']
+
@@ -40,12 +43,8 @@ index f67c5c7..eb909ce 100644
+if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']:
external_dirs += ['media/libtremor']
--if CONFIG['MOZ_OPUS']:
-+if CONFIG['MOZ_OPUS'] and not CONFIG['MOZ_NATIVE_OPUS']:
- external_dirs += ['media/libopus']
-
if CONFIG['MOZ_WEBM']:
-@@ -37,14 +43,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ_NATIVE_LIBVPX']:
+@@ -37,15 +46,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ
if not CONFIG['MOZ_NATIVE_PNG']:
external_dirs += ['media/libpng']
@@ -59,6 +58,7 @@ index f67c5c7..eb909ce 100644
'media/kiss_fft',
'media/libcubeb',
- 'media/libogg',
+- 'media/libopus',
- 'media/libtheora',
- 'media/libspeex_resampler',
'media/libstagefright',
@@ -120,7 +120,7 @@ diff --git configure.in configure.in
index 87db361..7947626 100644
--- configure.in
+++ configure.in
-@@ -5056,6 +5056,57 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then
+@@ -5223,6 +5223,140 @@ if test "${ac_cv_c_attribute_aligned}" !
fi
dnl ========================================================
@@ -175,13 +175,6 @@ index 87db361..7947626 100644
+AC_SUBST(MOZ_NATIVE_TREMOR)
+
+dnl ========================================================
- dnl = Disable Opus audio codec support
- dnl ========================================================
- MOZ_ARG_DISABLE_BOOL(opus,
-@@ -5064,6 +5115,89 @@ MOZ_ARG_DISABLE_BOOL(opus,
- MOZ_OPUS=1)
-
- dnl ========================================================
+dnl Check for libopus
+dnl ========================================================
+
diff --git a/www/libxul/Makefile b/www/libxul/Makefile
index f4b871e1658e..4543f773c6cb 100644
--- a/www/libxul/Makefile
+++ b/www/libxul/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= libxul
-DISTVERSION= 31.5.3
+DISTVERSION= 31.6.0
CATEGORIES?= www devel
MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source
DISTNAME= firefox-${DISTVERSION}esr.source
diff --git a/www/libxul/distinfo b/www/libxul/distinfo
index 93d4df0f5368..95da5e087f1b 100644
--- a/www/libxul/distinfo
+++ b/www/libxul/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-31.5.3esr.source.tar.bz2) = 4f0e89362767b1a2e3947abcb5d3edea199d126ce6ce900daec89492bf1ce302
-SIZE (firefox-31.5.3esr.source.tar.bz2) = 147757682
+SHA256 (firefox-31.6.0esr.source.tar.bz2) = 88ad45202a7aee9c43378879863b023270aa29463d312f396a78a6e9cdcbf5c3
+SIZE (firefox-31.6.0esr.source.tar.bz2) = 147767808
diff --git a/www/linux-firefox/Makefile b/www/linux-firefox/Makefile
index fb942159e83d..9a29c6bbac35 100644
--- a/www/linux-firefox/Makefile
+++ b/www/linux-firefox/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= firefox
-DISTVERSION= 36.0.4
+DISTVERSION= 37.0
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/www/linux-firefox/distinfo b/www/linux-firefox/distinfo
index 563cfb38c04d..4d49e8467351 100644
--- a/www/linux-firefox/distinfo
+++ b/www/linux-firefox/distinfo
@@ -1,5 +1,5 @@
-SHA256 (firefox-36.0.4.tar.bz2) = 15665cca9e862042585b49c69c62fabf9b65edc6cbbb67cc11b4cf387458a0fc
-SIZE (firefox-36.0.4.tar.bz2) = 47843171
+SHA256 (firefox-37.0.tar.bz2) = d9e2cc7b5de379022767d49e68435417e5dcf91906331d295ac4d885c4ccf647
+SIZE (firefox-37.0.tar.bz2) = 47780329
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b