Hello community,
here is the log from the commit of package MozillaFirefox.3722 for
openSUSE:13.1:Update checked in at 2015-04-24 09:45:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.1:Update/MozillaFirefox.3722 (Old)
and /work/SRC/openSUSE:13.1:Update/.MozillaFirefox.3722.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox.3722"
Changes:
--------
New Changes file:
--- /dev/null 2015-03-12 01:14:30.992027505 +0100
+++
/work/SRC/openSUSE:13.1:Update/.MozillaFirefox.3722.new/MozillaFirefox.changes
2015-04-24 09:45:46.000000000 +0200
@@ -0,0 +1,4002 @@
+-------------------------------------------------------------------
+Fri Apr 17 16:39:20 UTC 2015 - [email protected]
+
+- update to Firefox 37.0.2 (bnc#928116)
+ * MFSA 2015-45/CVE-2015-2706 (bmo#1141081)
+ Memory corruption during failed plugin initialization
+
+-------------------------------------------------------------------
+Fri Apr 3 08:27:24 UTC 2015 - [email protected]
+
+- update to Firefox 37.0.1 (bnc#926166)
+ * MFSA 2015-43/CVE-2015-0798 (bmo#1147597) (Android only)
+ Loading privileged content through Reader mode
+ * MFSA 2015-44/CVE-2015-0799 (bmo#1148328)
+ Certificate verification bypass through the HTTP/2 Alt-Svc header
+
+-------------------------------------------------------------------
+Sat Mar 28 09:46:48 UTC 2015 - [email protected]
+
+- update to Firefox 37.0 (bnc#925368)
+ * Heartbeat user rating system
+ * Yandex set as default search provider for the Turkish locale
+ * Bing search now uses HTTPS for secure searching
+ * Improved protection against site impersonation via OneCRL
+ centralized certificate revocation
+ * Opportunistically encrypt HTTP traffic where the server supports
+ HTTP/2 AltSvc
+ * some more behaviour changes for TLS
+ security fixes:
+ * MFSA 2015-30/CVE-2015-0814/CVE-2015-0815
+ Miscellaneous memory safety hazards
+ * MFSA 2015-31/CVE-2015-0813 (bmo#1106596))
+ Use-after-free when using the Fluendo MP3 GStreamer plugin
+ * MFSA 2015-32/CVE-2015-0812 (bmo#1128126)
+ Add-on lightweight theme installation approval bypassed through
+ MITM attack
+ * MFSA 2015-33/CVE-2015-0816 (bmo#1144991)
+ resource:// documents can load privileged pages
+ * MFSA-2015-34/CVE-2015-0811 (bmo#1132468)
+ Out of bounds read in QCMS library
+ * MFSA-2015-35/CVE-2015-0810 (bmo#1125013)
+ Cursor clickjacking with flash and images (OS X only)
+ * MFSA-2015-36/CVE-2015-0808 (bmo#1109552)
+ Incorrect memory management for simple-type arrays in WebRTC
+ * MFSA-2015-37/CVE-2015-0807 (bmo#1111834)
+ CORS requests should not follow 30x redirections after preflight
+ * MFSA-2015-38/CVE-2015-0805/CVE-2015-0806 (bmo#1135511, bmo#1099437)
+ Memory corruption crashes in Off Main Thread Compositing
+ * MFSA-2015-39/CVE-2015-0803/CVE-2015-0804 (bmo#1134560)
+ Use-after-free due to type confusion flaws
+ * MFSA-2015-40/CVE-2015-0801 (bmo#1146339)
+ Same-origin bypass through anchor navigation
+ * MFSA-2015-41/CVE-2015-0800/CVE-2012-2808
+ PRNG weakness allows for DNS poisoning on Android (only)
+ * MFSA-2015-42/CVE-2015-0802 (bmo#1124898)
+ Windows can retain access to privileged content on navigation
+ to unprivileged pages
+- removed obsolete patches
+ * mozilla-bmo1088588.patch
+ * mozilla-bmo1108834.patch
+- requires NSPR 4.10.8
+
+-------------------------------------------------------------------
+Tue Mar 24 15:35:24 UTC 2015 - [email protected]
+
+- Fix builds with skia on Power
+ mozilla-skia-be-le.patch (patch from #bmo1136958)
+ mozilla-bmo1108834.patch
+ mozilla-bmo1005535.patch
+
+-------------------------------------------------------------------
+Sat Mar 21 09:03:12 UTC 2015 - [email protected]
+
+- update to Firefox 36.0.4 (bnc#923534)
+ * MFSA 2015-28/CVE-2015-0818 (bmo#1144988)
+ Privilege escalation through SVG navigation
+ * MFSA 2015-29/CVE-2015-0817 (bmo#1145255)
+ Code execution through incorrect JavaScript bounds checking
+ elimination
+
+-------------------------------------------------------------------
+Fri Mar 20 15:02:33 UTC 2015 - [email protected]
+
+- Copy the icons to /usr/share/icons instead of symlinking them:
+ in preparation for containerized apps (e.g. xdg-app) as well as
+ AppStream metadata extraction, there are a couple locations that
+ need to be real files for system integration (.desktop files,
+ icons, mime-type info).
+
+-------------------------------------------------------------------
+Sat Mar 7 07:40:56 UTC 2015 - [email protected]
+
+- update to Firefox 36.0.1
+ Bugfixes:
+ * Disable the usage of the ANY DNS query type (bmo#1093983)
+ * Hello may become inactive until restart (bmo#1137469)
+ * Print preferences may not be preserved (bmo#1136855)
+ * Hello contact tabs may not be visible (bmo#1137141)
+ * Accept hostnames that include an underscore character ("_")
+ (bmo#1136616)
+ * WebGL may use significant memory with Canvas2d (bmo#1137251)
+ * Option -remote has been restored (bmo#1080319)
+- added mozilla-skia-bmo1136958.patch to fix build issues for
+ ARM and PPC
+
+-------------------------------------------------------------------
+Fri Feb 20 22:53:39 UTC 2015 - [email protected]
+
+- update to Firefox 36.0 (bnc#917597)
+ * mozilla-xremote-client was removed
+ * added libclearkey.so media plugin
+ * Pinned tiles on the new tab page can be synced
+ * Support for the full HTTP/2 protocol. HTTP/2 enables a faster,
+ more scalable, and more responsive web.
+ * Locale added: Uzbek (uz)
+ security fixes:
+ * MFSA 2015-11/CVE-2015-0835/CVE-2015-0836
+ Miscellaneous memory safety hazards
+ * MFSA 2015-12/CVE-2015-0833 (bmo#945192)
+ Invoking Mozilla updater will load locally stored DLL files
+ (Windows only)
+ * MFSA 2015-13/CVE-2015-0832 (bmo#1065909)
+ Appended period to hostnames can bypass HPKP and HSTS protections
+ * MFSA 2015-14/CVE-2015-0830 (bmo#1110488)
+ Malicious WebGL content crash when writing strings
+ * MFSA 2015-15/CVE-2015-0834 (bmo#1098314)
+ TLS TURN and STUN connections silently fail to simple TCP connections
+ * MFSA 2015-16/CVE-2015-0831 (bmo#1130514)
+ Use-after-free in IndexedDB
+ * MFSA 2015-17/CVE-2015-0829 (bmo#1128939)
+ Buffer overflow in libstagefright during MP4 video playback
+ * MFSA 2015-18/CVE-2015-0828 (bmo#1030667, bmo#988675)
+ Double-free when using non-default memory allocators with a
+ zero-length XHR
+ * MFSA 2015-19/CVE-2015-0827 (bmo#1117304)
+ Out-of-bounds read and write while rendering SVG content
+ * MFSA 2015-20/CVE-2015-0826 (bmo#1092363)
+ Buffer overflow during CSS restyling
+ * MFSA 2015-21/CVE-2015-0825 (bmo#1092370)
+ Buffer underflow during MP3 playback
+ * MFSA 2015-22/CVE-2015-0824 (bmo#1095925)
+ Crash using DrawTarget in Cairo graphics library
+ * MFSA 2015-23/CVE-2015-0823 (bmo#1098497)
+ Use-after-free in Developer Console date with OpenType Sanitiser
+ * MFSA 2015-24/CVE-2015-0822 (bmo#1110557)
+ Reading of local files through manipulation of form autocomplete
+ * MFSA 2015-25/CVE-2015-0821 (bmo#1111960)
+ Local files or privileged URLs in pages can be opened into new tabs
+ * MFSA 2015-26/CVE-2015-0819 (bmo#1079554)
+ UI Tour whitelisted sites in background tab can spoof foreground
+ tabs
+ * MFSA 2015-27CVE-2015-0820 (bmo#1125398)
+ Caja Compiler JavaScript sandbox bypass
+- rebased patches
+- requires NSS 3.17.4
+
+-------------------------------------------------------------------
+Sat Jan 31 18:37:38 UTC 2015 - [email protected]
+
+- update to Firefox 35.0.1
+ * With the Enhanced Steam extension, Firefox could crash (bmo#1123732)
+ * Kerberos authentication did not work with alias (bmo#1108971)
+ * SVG / CSS animation had a regression causing rendering issues on
+ websites like openstreemap.org (bmo#1083079)
+ * On Godaddy webmail, Firefox could crash (bmo#1113121)
+ * document.baseURI did not get updated to document.location after
+ base tag was removed from DOM for site with a CSP (bmo#1121857)
+ * With a Right-to-left (RTL) version of Firefox, the text selection
+ could be broken (bmo#1104036)
+ * CSP had a change in behavior with regard to case sensitivity
+ resources loading (bmo#1122445)
+
+-------------------------------------------------------------------
+Sat Jan 10 18:36:37 UTC 2015 - [email protected]
+
+- update to Firefox 35.0 (bnc#910669)
+ notable features:
+ * Firefox Hello with new rooms-based conversations model
+ * Implemented HTTP Public Key Pinning Extension (for enhanced
+ authentication of encrypted connections)
+ security fixes:
+ * MFSA 2015-01/CVE-2014-8634/CVE-2014-8635
+ Miscellaneous memory safety hazards
+ * MFSA 2015-02/CVE-2014-8637 (bmo#1094536)
+ Uninitialized memory use during bitmap rendering
+ * MFSA 2015-03/CVE-2014-8638 (bmo#1080987)
+ sendBeacon requests lack an Origin header
+ * MFSA 2015-04/CVE-2014-8639 (bmo#1095859)
+ Cookie injection through Proxy Authenticate responses
+ * MFSA 2015-05/CVE-2014-8640 (bmo#1100409)
+ Read of uninitialized memory in Web Audio
+ * MFSA 2015-06/CVE-2014-8641 (bmo#1108455)
+ Read-after-free in WebRTC
+ * MFSA 2015-07/CVE-2014-8643 (bmo#1114170) (Windows-only)
+ Gecko Media Plugin sandbox escape
+ * MFSA 2015-08/CVE-2014-8642 (bmo#1079658)
+ Delegated OCSP responder certificates failure with
++++ 3805 more lines (skipped)
++++ between /dev/null
++++ and
/work/SRC/openSUSE:13.1:Update/.MozillaFirefox.3722.new/MozillaFirefox.changes
New:
----
MozillaFirefox-rpmlintrc
MozillaFirefox.changes
MozillaFirefox.desktop
MozillaFirefox.spec
_constraints
compare-locales.tar.xz
create-tar.sh
find-external-requires.sh
firefox-37.0.2-source.tar.xz
firefox-appdata.xml
firefox-branded-icons.patch
firefox-kde.patch
firefox-mimeinfo.xml
firefox-multilocale-chrome.patch
firefox-no-default-ualocale.patch
firefox.1
firefox.js
kde.js
l10n-37.0.2.tar.xz
mozilla-arm-disable-edsp.patch
mozilla-bmo1005535.patch
mozilla-get-app-id
mozilla-icu-strncat.patch
mozilla-kde.patch
mozilla-language.patch
mozilla-nongnome-proxies.patch
mozilla-ntlm-full-path.patch
mozilla-openaes-decl.patch
mozilla-prefer_plugin_pref.patch
mozilla-preferences.patch
mozilla-repo.patch
mozilla-shared-nss-db.patch
mozilla-skia-be-le.patch
mozilla-skia-bmo1136958.patch
mozilla.sh.in
source-stamp.txt
spellcheck.js
toolkit-download-folder.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MozillaFirefox.spec ++++++
++++ 638 lines (skipped)
++++++ MozillaFirefox-rpmlintrc ++++++
addFilter("no-jar-manifest")
++++++ MozillaFirefox.desktop ++++++
[Desktop Entry]
Encoding=UTF-8
Name=%NAME
GenericName=Web Browser
Comment=Web Browser
TryExec=%EXEC
Exec=%EXEC %u
Icon=%ICON
Terminal=false
StartupNotify=true
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;application/x-xpinstall;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
Type=Application
++++++ create-tar.sh ++++++
#!/bin/bash
CHANNEL="release"
BRANCH="releases/mozilla-$CHANNEL"
RELEASE_TAG="FIREFOX_37_0_2_RELEASE"
VERSION="37.0.2"
# mozilla
if [ -d mozilla ]; then
pushd mozilla
_repourl=$(hg paths)
case "$_repourl" in
*$BRANCH*)
echo "updating previous tree"
hg pull
popd
;;
* )
echo "removing obsolete tree"
popd
rm -rf mozilla
;;
esac
fi
if [ ! -d mozilla ]; then
echo "cloning new $BRANCH..."
hg clone http://hg.mozilla.org/$BRANCH mozilla
fi
pushd mozilla
hg update --check
[ "$RELEASE_TAG" == "default" ] || hg update -r $RELEASE_TAG
# get repo and source stamp
echo -n "REV=" > ../source-stamp.txt
hg -R . parent --template="{node|short}\n" >> ../source-stamp.txt
echo -n "REPO=" >> ../source-stamp.txt
hg showconfig paths.default 2>/dev/null | head -n1 | sed -e "s/^ssh:/http:/" >>
../source-stamp.txt
popd
echo "creating archive..."
tar cJf firefox-$VERSION-source.tar.xz --exclude=.hgtags --exclude=.hgignore
--exclude=.hg --exclude=CVS mozilla
# l10n
echo "fetching locales..."
test ! -d l10n && mkdir l10n
for locale in $(awk '{ print $1; }' mozilla/browser/locales/shipped-locales); do
case $locale in
ja-JP-mac|en-US)
;;
*)
echo "fetching $locale ..."
hg clone http://hg.mozilla.org/releases/l10n/mozilla-$CHANNEL/$locale
l10n/$locale
[ "$RELEASE_TAG" == "default" ] || hg -R l10n/$locale up -C -r
$RELEASE_TAG
;;
esac
done
echo "creating l10n archive..."
tar cJf l10n-$VERSION.tar.xz --exclude=.hgtags --exclude=.hgignore
--exclude=.hg l10n
# compare-locales
echo "creating compare-locales"
hg clone http://hg.mozilla.org/build/compare-locales
tar cJf compare-locales.tar.xz --exclude=.hgtags --exclude=.hgignore
--exclude=.hg compare-locales
++++++ find-external-requires.sh ++++++
#!/bin/sh
# Finds requirements provided outside of the current file set
filelist=$( sed "s/[]['\"*?{}]/\\\\\&/g" )
provides=$( echo "$filelist" | /usr/lib/rpm/find-provides )
echo "$filelist" \
| /usr/lib/rpm/find-requires \
| grep -F -v "$provides" \
| sort -u
++++++ firefox-branded-icons.patch ++++++
# HG changeset patch
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
diff --git a/browser/app/Makefile.in b/browser/app/Makefile.in
--- a/browser/app/Makefile.in
+++ b/browser/app/Makefile.in
@@ -62,16 +62,21 @@ GARBAGE += $(addprefix $(FINAL_TARGET)/d
endif
ifdef MOZ_WIDGET_GTK
libs::
$(INSTALL) $(IFLAGS1) $(DIST)/branding/mozicon128.png
$(FINAL_TARGET)/icons
$(INSTALL) $(IFLAGS1) $(DIST)/branding/default16.png
$(FINAL_TARGET)/chrome/icons/default
$(INSTALL) $(IFLAGS1) $(DIST)/branding/default32.png
$(FINAL_TARGET)/chrome/icons/default
$(INSTALL) $(IFLAGS1) $(DIST)/branding/default48.png
$(FINAL_TARGET)/chrome/icons/default
+ifdef MOZ_OFFICIAL_BRANDING
+ $(INSTALL) $(IFLAGS1) $(DIST)/branding/default22.png
$(FINAL_TARGET)/chrome/icons/default
+ $(INSTALL) $(IFLAGS1) $(DIST)/branding/default24.png
$(FINAL_TARGET)/chrome/icons/default
+ $(INSTALL) $(IFLAGS1) $(DIST)/branding/default256.png
$(FINAL_TARGET)/chrome/icons/default
+endif
endif
ifndef LIBXUL_SDK
# channel-prefs.js is handled separate from other prefs due to bug 756325
libs:: $(srcdir)/profile/channel-prefs.js
$(NSINSTALL) -D $(DIST)/bin/defaults/pref
$(call py_action,preprocessor,-Fsubstitution $(PREF_PPFLAGS)
$(ACDEFINES) $^ -o $(DIST)/bin/defaults/pref/channel-prefs.js)
endif
diff --git a/browser/branding/official/Makefile.in
b/browser/branding/official/Makefile.in
--- a/browser/branding/official/Makefile.in
+++ b/browser/branding/official/Makefile.in
@@ -35,18 +35,21 @@ BRANDING_FILES := \
document.icns \
dsstore \
$(NULL)
endif
ifdef MOZ_WIDGET_GTK
BRANDING_FILES := \
default16.png \
+ default22.png \
+ default24.png \
default32.png \
default48.png \
+ default256.png \
mozicon128.png \
$(NULL)
endif
BRANDING_DEST := $(DIST)/branding
BRANDING_TARGET := export
INSTALL_TARGETS += BRANDING
diff --git a/browser/installer/package-manifest.in
b/browser/installer/package-manifest.in
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -654,18 +654,21 @@
@RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf
@RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png
@RESPATH@/chrome/toolkit@JAREXT@
@RESPATH@/chrome/toolkit.manifest
@RESPATH@/chrome/recording.manifest
@RESPATH@/chrome/recording/*
#ifdef MOZ_GTK
@RESPATH@/browser/chrome/icons/default/default16.png
+@RESPATH@/browser/chrome/icons/default/default22.png
+@RESPATH@/browser/chrome/icons/default/default24.png
@RESPATH@/browser/chrome/icons/default/default32.png
@RESPATH@/browser/chrome/icons/default/default48.png
+@RESPATH@/browser/chrome/icons/default/default256.png
#endif
; [Webide Files]
@RESPATH@/browser/chrome/webide@JAREXT@
@RESPATH@/browser/chrome/webide.manifest
@RESPATH@/browser/@PREF_DIR@/webide-prefs.js
; shell icons
++++++ firefox-kde.patch ++++++
++++ 1935 lines (skipped)
++++++ firefox-multilocale-chrome.patch ++++++
# HG changeset patch
# Parent 16846914f968944f991c8b12fdc38ce8fc099d73
# User Wolfgang Rosenauer <[email protected]>
# Parent c0a406c7a6cc5edc8fb34549428866ff39ad878f
Add searchplugins to chrome packaging for proper localization
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -378,16 +378,20 @@ pref("browser.helperApps.deleteTempFileO
#endif
// search engines URL
pref("browser.search.searchEnginesURL",
"https://addons.mozilla.org/%LOCALE%/firefox/search-engines/");
// pointer to the default engine name
pref("browser.search.defaultenginename",
"chrome://browser-region/locale/region.properties");
+// Tell the search service to load search plugins from the locale JAR
+pref("browser.search.loadFromJars", true);
+pref("browser.search.jarURIs", "chrome://browser/locale/searchplugins/");
+
// Ordering of Search Engines in the Engine list.
pref("browser.search.order.1",
"chrome://browser-region/locale/region.properties");
pref("browser.search.order.2",
"chrome://browser-region/locale/region.properties");
pref("browser.search.order.3",
"chrome://browser-region/locale/region.properties");
// Market-specific search defaults (US market only)
pref("browser.search.geoSpecificDefaults", true);
pref("browser.search.defaultenginename.US",
"data:text/plain,browser.search.defaultenginename.US=Yahoo");
diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
--- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in
@@ -66,27 +66,30 @@ STUB_HOOK = $(NSINSTALL) -D '$(_ABS_DIST
cp ../installer/windows/l10ngen/stub.exe
'$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe'; \
chmod 0755 '$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_STUB_BASENAME).exe'; \
$(NULL)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT) $(DIST_SUBDIR),windows metro)
SEARCHPLUGINS_NAMES = $(shell cat $(call
MERGE_FILE,/searchplugins/metrolist.txt))
else
-SEARCHPLUGINS_NAMES = $(shell cat $(call MERGE_FILE,/searchplugins/list.txt))
ddg
+SEARCHPLUGINS_NAMES = $(shell cat \
+ $(firstword $(wildcard $(LOCALE_SRCDIR)/searchplugins/list.txt) \
+ @srcdir@/en-US/searchplugins/list.txt ) ) ddg
endif
SEARCHPLUGINS_PATH := $(FINAL_TARGET)/searchplugins
# metro build call a searchplugins target for search engine plugins
.PHONY: searchplugins
SEARCHPLUGINS_TARGET := libs searchplugins
-SEARCHPLUGINS := $(foreach plugin,$(addsuffix
.xml,$(SEARCHPLUGINS_NAMES)),$(or $(wildcard $(call
EN_US_OR_L10N_FILE,searchplugins/$(plugin))),$(info Missing searchplugin:
$(plugin))))
+#SEARCHPLUGINS := $(foreach plugin,$(addsuffix
.xml,$(SEARCHPLUGINS_NAMES)),$(or $(wildcard $(call
EN_US_OR_L10N_FILE,searchplugins/$(plugin))),$(info Missing searchplugin:
$(plugin))))
+SEARCHPLUGINS := $(addsuffix .xml,$(SEARCHPLUGINS_NAMES))
# Some locale-specific search plugins may have preprocessor directives, but the
# default en-US ones do not.
SEARCHPLUGINS_FLAGS := --silence-missing-directive-warnings
-PP_TARGETS += SEARCHPLUGINS
+#PP_TARGETS += SEARCHPLUGINS
# Required for l10n.mk - defines a list of app sub dirs that should
# be included in langpack xpis.
ifdef MOZ_METRO
# metro build, include both app folders
DIST_SUBDIRS = browser metro
else
DIST_SUBDIRS = $(DIST_SUBDIR)
@@ -120,16 +123,39 @@ NO_JA_JP_MAC_AB_CD := $(if $(filter ja-J
libs:: $(FINAL_TARGET)/defaults/profile/bookmarks.html ;
libs:: $(addprefix generic/profile/,$(PROFILE_FILES))
$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/defaults/profile
libs:: $(call MERGE_FILES,$(addprefix profile/chrome/,$(PROFILE_CHROME)))
$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/defaults/profile/chrome
+tmp-search.jar.mn::
+ printf "$(AB_CD).jar:" > $@
+ printf "$(foreach plugin,$(SEARCHPLUGINS), \n
locale/browser/searchplugins/$(plugin) ($(plugin)))" >> $@
+ @echo >> $@
+
+searchplugins-jar:: $(SEARCHPLUGINS)
+ for SEARCHPLUGIN in $^; do \
+ $(call py_action,preprocessor,$(DEFINES) $(ACDEFINES) \
+ $$SEARCHPLUGIN > $$SEARCHPLUGIN-new) ; \
+ mv $$SEARCHPLUGIN-new $$SEARCHPLUGIN ; \
+ done
+
+searchplugins-jar:: tmp-search.jar.mn
+ $(call py_action,jar_maker,\
+ $(QUIET) -j $(FINAL_TARGET)/chrome \
+ -s $(topsrcdir)/$(relativesrcdir)/en-US/searchplugins \
+ -s $(LOCALE_SRCDIR)/searchplugins \
+ $(MAKE_JARS_FLAGS) tmp-search.jar.mn)
+
+libs:: searchplugins-jar
+
+GARBAGE += tmp-search.jar.mn
+
libs-%:
$(NSINSTALL) -D $(DIST)/install
@$(MAKE) -C ../../toolkit/locales libs-$*
@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$*
ifdef MOZ_WEBAPP_RUNTIME
@$(MAKE) -C ../../webapprt/locales AB_CD=$* XPI_NAME=locale-$*
endif
@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$*
XPI_NAME=locale-$*
diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn
--- a/browser/locales/jar.mn
+++ b/browser/locales/jar.mn
@@ -146,14 +146,15 @@
locale/browser/syncQuota.properties
(%chrome/browser/syncQuota.properties)
#endif
% locale browser-region @AB_CD@ %locale/browser-region/
locale/browser-region/region.properties
(%chrome/browser-region/region.properties)
# the following files are browser-specific overrides
locale/browser/netError.dtd (%chrome/overrides/netError.dtd)
locale/browser/appstrings.properties
(%chrome/overrides/appstrings.properties)
locale/browser/downloads/settingsChange.dtd
(%chrome/overrides/settingsChange.dtd)
+ locale/browser/searchplugins/list.txt (%searchplugins/list.txt)
% override chrome://global/locale/netError.dtd
chrome://browser/locale/netError.dtd
% override chrome://global/locale/appstrings.properties
chrome://browser/locale/appstrings.properties
% override chrome://mozapps/locale/downloads/settingsChange.dtd
chrome://browser/locale/downloads/settingsChange.dtd
% locale pdf.js @AB_CD@ %locale/pdfviewer/
locale/pdfviewer/viewer.properties
(%pdfviewer/viewer.properties)
locale/pdfviewer/chrome.properties
(%pdfviewer/chrome.properties)
++++++ firefox-no-default-ualocale.patch ++++++
# HG changeset patch
# User Wolfgang Rosenauer <[email protected]>
# Parent 099312626f5f7c9cb5573a61d0230574ee12a660
Do not overwrite the locale dynamic pref from xulrunner's all.js with a wrong
default value
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -261,17 +261,17 @@ pref("browser.uitour.pinnedTabUrl", "htt
pref("browser.uitour.url",
"https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/tour/");
pref("browser.customizemode.tip0.shown", false);
pref("browser.customizemode.tip0.learnMoreUrl",
"https://support.mozilla.org/1/firefox/%VERSION%/%OS%/%LOCALE%/customize");
pref("keyword.enabled", true);
pref("browser.fixup.domainwhitelist.localhost", true);
-pref("general.useragent.locale", "@AB_CD@");
+pref("general.useragent.locale", "chrome://global/locale/intl.properties");
pref("general.skins.selectedSkin", "classic/1.0");
pref("general.smoothScroll", true);
#ifdef UNIX_BUT_NOT_MAC
pref("general.autoScroll", false);
#else
pref("general.autoScroll", true);
#endif
++++++ firefox.1 ++++++
.TH FIREFOX 1 "January 04, 2006" firefox "Linux User's Manual"
.SH NAME
firefox \- a Web browser for X11 derived from the Mozilla browser
.SH SYNOPSIS
.B firefox
[\fIOPTIONS\fR] [\fIURL\fR]
.SH DESCRIPTION
\fBMozilla Firefox\fR is an open-source web browser, designed for
standards compliance, performance and portability.
.SH USAGE
\fBfirefox\fR is a simple shell script that will set up the
environment for the actual executable.
.SH OPTIONS
A summary of the options supported by \fBfirefox\fR is included below.
.SS "GTK options"
\fB\-\-gdk-debug=\fR\fIFLAGS\fR
Gdk debugging flags to set
.TP
\fB\-\-gdk-no-debug=\fR\fIFLAGS\fR
Gdk debugging flags to unset
.TP
\fB\-\-gtk-debug=\fR\fIFLAGS\fR
Gtk+ debugging flags to set
.TP
\fB\-\-gtk-no-debug=\fR\fIFLAGS\fR
Gtk+ debugging flags to unset
.TP
\fB\-\-gtk-module=\fR\fIMODULE\fR
Load an additional Gtk module
.SS "X11 options"
.TP
.BI \-\-display= DISPLAY
X display to use
.TP
.B \--sync
Make X calls synchronous
.TP
.B \-\-no-xshm
Don't use X shared memory extension
.TP
.BI \-\-xim-preedit= STYLE
.TP
.BI \-\-xim-status= STYLE
.TP
.B \-\-g-fatal-warnings
Make all warnings fatal
.SS "Firefox options"
.TP
.B \-h, \-help
Show summary of options.
.TP
\fB\-height\fR \fIvalue\fR
Set height of startup window to \fIvalue\fR.
.TP
\fB\-width\fR \fIvalue\fR
Set width of startup window to \fIvalue\fR.
.TP
.B \-v, \-version
Print \fB/usr/bin/firefox-bin\fR version.
.TP
\fB\-CreateProfile\fR \fIprofile\fR
Create \fIprofile\fR.
.TP
\fB\-P\fR \fIprofile\fR
Start with \fIprofile\fR.
.TP
.B \-ProfileManager
Start with profile manager.
.TP
\fB\-UILocale\fR \fIlang-region\fR
Start with \fIlang-region\fR resources.
.TP
\fB\-contentLocale\fR \fIlang-region\fR
Start with \fIlang-region\fR resources.
.TP
\fB\-remote\fR \fIcommand\fR
Execute \fIcommand\fR in an already running Firefox process. For more info,
see: \fIhttp://www.mozilla.org/unix/remote.html\fR
.TP
.B \-no-remote
Don't try to control an already running instance.
.TP
.B \-jsconsole
Start with Javascript Console
.TP
\fB\-chrome\fR \fIurl\fR
Load the specified chrome.
.TP
\fB\-new-window\fR \fIurl\fR
Open URL in a new window if Firefox is already running.
.TP
\fB\-new-tab\fR \fIurl\fR
Open URL in a new tab if Firefox is already running.
.TP
\fB\-preferences\fR
Open Firefox preferences menu.
.TP
.B \-safe-mode
Disables extensions and themes for this session.
.TP
.SH FILES
\fI/usr/bin/firefox\fR - shell script wrapping
\fBfirefox\fR
.br
\fI/usr/lib/firefox/firefox\fR - \fBfirefox\fR
executable
.SH VERSION
3.0
.SH BUGS
To report a bug, please visit \fIhttp://bugzilla.mozilla.org/\fR
.SH "SEE ALSO"
.BR mozilla(1)
.SH AUTHORS
.TP
.B The Mozilla Organization
.I http://www.mozilla.org/about.html
++++++ firefox.js ++++++
pref("browser.preferences.instantApply", true);
++++++ kde.js ++++++
pref("browser.preferences.instantApply", false);
++++++ mozilla-arm-disable-edsp.patch ++++++
# HG changeset patch
# User Adrian Schröter <[email protected]>
# Parent b945e0c3b145b6b2245f42bab52f911c2d1f6759
disable ESDP support (no BNC or BMO reference yet :-()
diff --git a/mozglue/build/arm.h b/mozglue/build/arm.h
--- a/mozglue/build/arm.h
+++ b/mozglue/build/arm.h
@@ -116,17 +116,17 @@ namespace mozilla {
extern bool MFBT_DATA neon_enabled;
#endif
#endif
}
#if defined(MOZILLA_PRESUME_EDSP)
# define MOZILLA_MAY_SUPPORT_EDSP 1
inline bool supports_edsp() { return true; }
-#elif defined(MOZILLA_MAY_SUPPORT_EDSP) \
+#elif 0 \
&& defined(MOZILLA_ARM_HAVE_CPUID_DETECTION)
inline bool supports_edsp() { return arm_private::edsp_enabled; }
#else
inline bool supports_edsp() { return false; }
#endif
#if defined(MOZILLA_PRESUME_ARMV6)
# define MOZILLA_MAY_SUPPORT_ARMV6 1
++++++ mozilla-bmo1005535.patch ++++++
# HG changeset patch
# Parent b7eb1ce0237d6125b75bc8ff1cb3afc328d6e78c
# User Steve Singer <[email protected]>
# Parent d7af74fb513bcca581012f17ea248b1692db5d97
Bug 1005535 - Get skia GPU building on big endian.
diff --git a/configure.in b/configure.in
--- a/configure.in
+++ b/configure.in
@@ -8198,21 +8198,21 @@ dnl Skia
dnl ========================================================
if test "$MOZ_ENABLE_SKIA"; then
AC_DEFINE(MOZ_ENABLE_SKIA)
AC_DEFINE(USE_SKIA)
if test "${MOZ_WIDGET_TOOLKIT}" = "android" -o x"$MOZ_WIDGET_TOOLKIT" =
x"gonk"; then
AC_DEFINE(SK_BUILD_FOR_ANDROID_NDK)
fi
- if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}"
!= "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
+ #if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}"
!= "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
MOZ_ENABLE_SKIA_GPU=1
AC_DEFINE(USE_SKIA_GPU)
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
- fi
+ #fi
fi
AC_SUBST(MOZ_ENABLE_SKIA)
dnl ========================================================
dnl Check for nss-shared-helper
dnl ========================================================
PKG_CHECK_MODULES(NSSHELPER, nss-shared-helper,
diff --git a/gfx/skia/trunk/include/config/SkUserConfig.h
b/gfx/skia/trunk/include/config/SkUserConfig.h
--- a/gfx/skia/trunk/include/config/SkUserConfig.h
+++ b/gfx/skia/trunk/include/config/SkUserConfig.h
@@ -192,16 +192,17 @@
#if defined(SK_CPU_ARM32) || defined(SK_CPU_ARM64)
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_arm.h"
#else
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_x86.h"
#endif
// On all platforms we have this byte order
+
#define SK_A32_SHIFT 24
#define SK_R32_SHIFT 16
#define SK_G32_SHIFT 8
#define SK_B32_SHIFT 0
#define SK_ALLOW_STATIC_GLOBAL_INITIALIZERS 0
#define SK_SUPPORT_LEGACY_GETDEVICE
diff --git a/gfx/skia/trunk/include/core/SkColorPriv.h
b/gfx/skia/trunk/include/core/SkColorPriv.h
--- a/gfx/skia/trunk/include/core/SkColorPriv.h
+++ b/gfx/skia/trunk/include/core/SkColorPriv.h
@@ -27,37 +27,27 @@
* For easier compatibility with Skia's GPU backend, we further restrict these
* to either (in memory-byte-order) RGBA or BGRA. Note that this "order" does
* not directly correspond to the same shift-order, since we have to take
endianess
* into account.
*
* Here we enforce this constraint.
*/
-#ifdef SK_CPU_BENDIAN
- #define SK_RGBA_R32_SHIFT 24
- #define SK_RGBA_G32_SHIFT 16
- #define SK_RGBA_B32_SHIFT 8
- #define SK_RGBA_A32_SHIFT 0
- #define SK_BGRA_B32_SHIFT 24
- #define SK_BGRA_G32_SHIFT 16
- #define SK_BGRA_R32_SHIFT 8
- #define SK_BGRA_A32_SHIFT 0
-#else
#define SK_RGBA_R32_SHIFT 0
#define SK_RGBA_G32_SHIFT 8
#define SK_RGBA_B32_SHIFT 16
#define SK_RGBA_A32_SHIFT 24
#define SK_BGRA_B32_SHIFT 0
#define SK_BGRA_G32_SHIFT 8
#define SK_BGRA_R32_SHIFT 16
#define SK_BGRA_A32_SHIFT 24
-#endif
+
#if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
#error "can't define PMCOLOR to be RGBA and BGRA"
#endif
#define LOCAL_PMCOLOR_SHIFTS_EQUIVALENT_TO_RGBA \
(SK_A32_SHIFT == SK_RGBA_A32_SHIFT && \
SK_R32_SHIFT == SK_RGBA_R32_SHIFT && \
diff --git a/gfx/skia/trunk/include/core/SkImageInfo.h
b/gfx/skia/trunk/include/core/SkImageInfo.h
--- a/gfx/skia/trunk/include/core/SkImageInfo.h
+++ b/gfx/skia/trunk/include/core/SkImageInfo.h
@@ -83,19 +83,20 @@ enum SkColorType {
kLastEnum_SkColorType = kIndex_8_SkColorType,
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
kN32_SkColorType = kBGRA_8888_SkColorType,
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
kN32_SkColorType = kRGBA_8888_SkColorType,
#else
-#error "SK_*32_SHFIT values must correspond to BGRA or RGBA byte order"
+ kN32_SkColorType = kBGRA_8888_SkColorType
#endif
+
#ifdef SK_SUPPORT_LEGACY_N32_NAME
kPMColor_SkColorType = kN32_SkColorType
#endif
};
static int SkColorTypeBytesPerPixel(SkColorType ct) {
static const uint8_t gSize[] = {
0, // Unknown
diff --git a/gfx/skia/trunk/include/gpu/GrTypes.h
b/gfx/skia/trunk/include/gpu/GrTypes.h
--- a/gfx/skia/trunk/include/gpu/GrTypes.h
+++ b/gfx/skia/trunk/include/gpu/GrTypes.h
@@ -304,25 +304,23 @@ enum GrPixelConfig {
* Byte order is r, g, b, a. This color format is 32 bits per channel
*/
kRGBA_float_GrPixelConfig,
kLast_GrPixelConfig = kRGBA_float_GrPixelConfig
};
static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
// Aliases for pixel configs that match skia's byte order.
-#ifndef SK_CPU_LENDIAN
- #error "Skia gpu currently assumes little endian"
-#endif
+
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
static const GrPixelConfig kSkia8888_GrPixelConfig =
kBGRA_8888_GrPixelConfig;
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
static const GrPixelConfig kSkia8888_GrPixelConfig =
kRGBA_8888_GrPixelConfig;
#else
- #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
+ static const GrPixelConfig kSkia8888_GrPixelConfig =
kBGRA_8888_GrPixelConfig;
#endif
// Returns true if the pixel config is a GPU-specific compressed format
// representation.
static inline bool GrPixelConfigIsCompressed(GrPixelConfig config) {
switch (config) {
case kETC1_GrPixelConfig:
case kLATC_GrPixelConfig:
++++++ mozilla-get-app-id ++++++
#!/usr/bin/perl -w
use XML::Simple;
my $file = shift || die "Usage: $0 [install.rdf|somefile.xpi]\n";
my $xml;
if ($file =~ /\.xpi$/) {
use Archive::Zip qw/:ERROR_CODES :CONSTANTS/;
my $zip = Archive::Zip->new();
if ( $zip->read($file) != AZ_OK ) {
die "zip file read error\n";
}
my $data = $zip->contents("install.rdf");
die "missing install.rdf in $file\n" unless $data;
$xml = XMLin($data) || die "$!\n";
} elsif ($file =~ /install.rdf/) {
$xml = XMLin($file) || die "$!\n";
} else {
die "unsupported file format\n";
}
my $desc;
for my $tag (qw/RDF:Description Description/) {
if (exists $xml->{$tag}) {
if (ref $xml->{$tag} eq 'ARRAY') {
$desc = $xml->{$tag};
} else {
$desc = [ $xml->{$tag} ];
}
}
}
my $uuid;
my $id;
for my $x (@$desc) {
if ($x->{"em:id"} =~ /{[[:xdigit:]]+-/) {
print STDERR "Warning: multiple uuids!\n" if defined $uuid;
$uuid = $x->{"em:id"};
} elsif ($x->{"em:id"} =~ /@/) {
print STDERR "Warning: multiple ids!\n" if defined $id;
$id = $x->{"em:id"};
}
}
if (defined $id) {
print "$id\n";
} elsif (defined $uuid) {
print "$uuid\n";
} else {
exit 1;
}
++++++ mozilla-icu-strncat.patch ++++++
# HG changeset patch
# Parent 29be2a4daa0f512d22bde85b97b5460839026571
# User Wolfgang Rosenauer <[email protected]>
From: Jan Engelhardt <[email protected]>
Reference: http://bugs.icu-project.org/trac/ticket/7808
diff --git a/intl/icu/source/tools/pkgdata/pkgdata.cpp
b/intl/icu/source/tools/pkgdata/pkgdata.cpp
--- a/intl/icu/source/tools/pkgdata/pkgdata.cpp
+++ b/intl/icu/source/tools/pkgdata/pkgdata.cpp
@@ -1975,22 +1975,22 @@ static void loadLists(UPKGOptions *o, UE
FILE *p = NULL;
size_t n;
static char buf[512] = "";
char cmdBuf[1024];
UErrorCode status = U_ZERO_ERROR;
const char cmd[] = "icu-config --incpkgdatafile";
/* #1 try the same path where pkgdata was called from. */
- findDirname(progname, cmdBuf, 1024, &status);
+ findDirname(progname, cmdBuf, sizeof(cmdBuf), &status);
if(U_SUCCESS(status)) {
if (cmdBuf[0] != 0) {
- uprv_strncat(cmdBuf, U_FILE_SEP_STRING, 1024);
+ uprv_strncat(cmdBuf, U_FILE_SEP_STRING,
sizeof(cmdBuf)-1-strlen(cmdBuf));
}
- uprv_strncat(cmdBuf, cmd, 1024);
+ uprv_strncat(cmdBuf, cmd, sizeof(cmdBuf)-1-strlen(cmdBuf));
if(verbose) {
fprintf(stdout, "# Calling icu-config: %s\n", cmdBuf);
}
p = popen(cmdBuf, "r");
}
if(p == NULL || (n = fread(buf, 1, 511, p)) <= 0) {
++++++ mozilla-kde.patch ++++++
++++ 3758 lines (skipped)
++++++ mozilla-language.patch ++++++
# HG changeset patch
# User Wolfgang Rosenauer <[email protected]>
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
--- a/intl/locale/nsLocaleService.cpp
+++ b/intl/locale/nsLocaleService.cpp
@@ -122,16 +122,17 @@ nsLocaleService::nsLocaleService(void)
nsRefPtr<nsLocale> resultLocale(new nsLocale());
NS_ENSURE_TRUE_VOID(resultLocale);
#ifdef MOZ_WIDGET_QT
const char* lang = QLocale::system().name().toUtf8();
#else
// Get system configuration
const char* lang = getenv("LANG");
+ const char* language = getenv("LANGUAGE");
#endif
nsAutoString xpLocale, platformLocale;
nsAutoString category, category_platform;
int i;
for( i = 0; i < LocaleListLength; i++ ) {
nsresult result;
@@ -150,16 +151,21 @@ nsLocaleService::nsLocaleService(void)
} else {
CopyASCIItoUTF16(lang, platformLocale);
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
}
}
if (NS_FAILED(result)) {
return;
}
+ // LANGUAGE is overriding LC_MESSAGES
+ if (i == LC_MESSAGES && language && *language) {
+ CopyASCIItoUTF16(language, platformLocale);
+ result = nsPosixLocale::GetXPLocale(language, xpLocale);
+ }
resultLocale->AddCategory(category, xpLocale);
resultLocale->AddCategory(category_platform, platformLocale);
}
mSystemLocale = do_QueryInterface(resultLocale);
mApplicationLocale = do_QueryInterface(resultLocale);
#endif // XP_UNIX
++++++ mozilla-nongnome-proxies.patch ++++++
From: Wolfgang Rosenauer
Subject: Do not use gconf for proxy settings if not running within Gnome
Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
===================================================================
RCS file:
/cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v
retrieving revision 1.1
diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
@@ -53,23 +53,27 @@ nsUnixSystemProxySettings::GetMainThread
// dbus prevents us from being threadsafe, but this routine should not block
anyhow
*aMainThreadOnly = true;
return NS_OK;
}
nsresult
nsUnixSystemProxySettings::Init()
{
- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
- if (mGSettings) {
-
mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
- getter_AddRefs(mProxySettings));
- }
- if (!mProxySettings) {
- mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+ // only use GSettings if that is a GNOME session
+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION");
+ if (sessionType && !strcmp(sessionType, "gnome")) {
+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
+ if (mGSettings) {
+
mGSettings->GetCollectionForSchema(NS_LITERAL_CSTRING("org.gnome.system.proxy"),
+ getter_AddRefs(mProxySettings));
+ }
+ if (!mProxySettings) {
+ mGConf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+ }
}
return NS_OK;
}
bool
nsUnixSystemProxySettings::IsProxyMode(const char* aMode)
{
++++++ mozilla-ntlm-full-path.patch ++++++
# HG changeset patch
# User Petr Cerny <[email protected]>
# Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6
Bug 634334 - call to the ntlm_auth helper fails
diff --git a/extensions/auth/nsAuthSambaNTLM.cpp
b/extensions/auth/nsAuthSambaNTLM.cpp
--- a/extensions/auth/nsAuthSambaNTLM.cpp
+++ b/extensions/auth/nsAuthSambaNTLM.cpp
@@ -168,17 +168,17 @@ static uint8_t* ExtractMessage(const nsA
nsresult
nsAuthSambaNTLM::SpawnNTLMAuthHelper()
{
const char* username = PR_GetEnv("USER");
if (!username)
return NS_ERROR_FAILURE;
const char* const args[] = {
- "ntlm_auth",
+ "/usr/bin/ntlm_auth",
"--helper-protocol", "ntlmssp-client-1",
"--use-cached-creds",
"--username", username,
nullptr
};
bool isOK = SpawnIOChild(const_cast<char* const*>(args), &mChildPID,
&mFromChildFD, &mToChildFD);
if (!isOK)
++++++ mozilla-openaes-decl.patch ++++++
# HG changeset patch
# Parent 33024abb3c58dab7239e32388df58e14f99defd5
# User Wolfgang Rosenauer <[email protected]>
# Parent 12305a99d90ce098f8f11f5609571cd709b6e2de
diff --git a/media/gmp-clearkey/0.1/openaes/oaes_lib.c
b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
--- a/media/gmp-clearkey/0.1/openaes/oaes_lib.c
+++ b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
@@ -24,16 +24,17 @@
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
* ---------------------------------------------------------------------------
*/
#include <stdlib.h>
+#include <stdio.h>
#include <stddef.h>
#include <time.h>
#include <string.h>
#ifdef WIN32
#include <process.h>
#endif
++++++ mozilla-prefer_plugin_pref.patch ++++++
From: Ubuntu
Subject: introduce a pref to prefer certain plugins for mime-types
diff --git a/dom/plugins/base/nsPluginHost.cpp
b/dom/plugins/base/nsPluginHost.cpp
--- a/dom/plugins/base/nsPluginHost.cpp
+++ b/dom/plugins/base/nsPluginHost.cpp
@@ -1334,17 +1334,51 @@ nsPluginHost::FindPluginForType(const ch
if (!aMimeType) {
return nullptr;
}
LoadPlugins();
InfallibleTArray<nsPluginTag*> matchingPlugins;
+ char *preferredPluginPath = nullptr;
+ nsAutoCString mimetypePrefString ("modules.plugins.mimetype.");
+ mimetypePrefString.Append(aMimeType);
+ const char *mimetypePrefChar = mimetypePrefString.get();
+ nsAdoptingCString pluginPath = Preferences::GetCString(mimetypePrefChar);
+ preferredPluginPath = (char*) pluginPath.get();
+
nsPluginTag *plugin = mPlugins;
+
+ if(preferredPluginPath) {
+ while (plugin) {
+ if (!aCheckEnabled || plugin->IsEnabled()) {
+ if (0 == PL_strcasecmp(plugin->mFileName.get(), preferredPluginPath) ||
+ 0 == PL_strcasecmp(plugin->mFullPath.get(), preferredPluginPath)) {
+ matchingPlugins.AppendElement(plugin);
+ }
+ }
+ plugin = plugin->mNext;
+ }
+
+ // now lets search for substrings
+ plugin = mPlugins;
+ while (plugin) {
+ if (!aCheckEnabled || plugin->IsEnabled()) {
+ if (nullptr != PL_strstr(plugin->mFileName.get(), preferredPluginPath)
||
+ nullptr != PL_strstr(plugin->mFullPath.get(),
preferredPluginPath)) {
+ matchingPlugins.AppendElement(plugin);
+ }
+ }
+ plugin = plugin->mNext;
+ }
+
+ return FindPreferredPlugin(matchingPlugins);
+ }
+
while (plugin) {
if (!aCheckEnabled || plugin->IsActive()) {
int32_t mimeCount = plugin->mMimeTypes.Length();
for (int32_t i = 0; i < mimeCount; i++) {
if (0 == PL_strcasecmp(plugin->mMimeTypes[i].get(), aMimeType)) {
matchingPlugins.AppendElement(plugin);
break;
}
++++++ mozilla-preferences.patch ++++++
From: Wolfgang Rosenauer <[email protected]>
Subject: use system locale if available
This setting used to live in the branding-openSUSE package but this is causing
too much
confusion and therefore is currently the only setting we switch in the unbranded
package unconditionally.
# HG changeset patch
# Parent 8c1bfc96b05ef1836aad6e9f2af323f63ed1b69c
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -1503,17 +1503,17 @@ pref("converter.html2txt.header_strategy
pref("intl.accept_languages",
"chrome://global/locale/intl.properties");
pref("intl.menuitems.alwaysappendaccesskeys","chrome://global/locale/intl.properties");
pref("intl.menuitems.insertseparatorbeforeaccesskeys","chrome://global/locale/intl.properties");
pref("intl.charset.detector",
"chrome://global/locale/intl.properties");
pref("intl.charset.fallback.override", "");
pref("intl.charset.fallback.tld", true);
pref("intl.ellipsis",
"chrome://global-platform/locale/intl.properties");
-pref("intl.locale.matchOS", false);
+pref("intl.locale.matchOS", true);
// fallback charset list for Unicode conversion (converting from Unicode)
// currently used for mail send only to handle symbol characters (e.g Euro,
trademark, smartquotes)
// for ISO-8859-1
pref("intl.fallbackCharsetList.ISO-8859-1", "windows-1252");
pref("font.language.group",
"chrome://global/locale/intl.properties");
// these locales have right-to-left UI
pref("intl.uidirection.ar", "rtl");
++++++ mozilla-repo.patch ++++++
# HG changeset patch
# Parent 80b6464bd883864fce57e8748010869af1be69e9
# Parent d160c6876c5f05d902b391551bf4f684254b3c7d
diff --git a/toolkit/mozapps/installer/package-name.mk
b/toolkit/mozapps/installer/package-name.mk
--- a/toolkit/mozapps/installer/package-name.mk
+++ b/toolkit/mozapps/installer/package-name.mk
@@ -137,24 +137,24 @@ else
BUILDID = $(shell $(PYTHON) $(MOZILLA_DIR)/config/printconfigsetting.py
$(DIST)/bin/platform.ini Build BuildID)
endif
ifndef INCLUDED_RCS_MK
USE_RCS_MK := 1
include $(MOZILLA_DIR)/config/makefiles/makeutils.mk
endif
-MOZ_SOURCE_STAMP = $(firstword $(shell hg -R $(MOZILLA_DIR) parent
--template="{node|short}\n" 2>/dev/null))
+#MOZ_SOURCE_STAMP = $(firstword $(shell hg -R $(MOZILLA_DIR) parent
--template="{node|short}\n" 2>/dev/null))
###########################################################################
# bug: 746277 - preserve existing functionality.
# MOZILLA_DIR="": cd $(SPACE); hg # succeeds if ~/.hg exists
###########################################################################
ifdef MOZILLA_OFFICIAL
-MOZ_SOURCE_REPO = $(call getSourceRepo,$(MOZILLA_DIR)$(NULL) $(NULL))
+#MOZ_SOURCE_REPO = $(call getSourceRepo,$(MOZILLA_DIR)$(NULL) $(NULL))
endif
MOZ_SOURCESTAMP_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).txt
MOZ_BUILDINFO_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).json
MOZ_MOZINFO_FILE = $(DIST)/$(PKG_PATH)/$(MOZ_INFO_BASENAME).mozinfo.json
# JavaScript Shell
PKG_JSSHELL = $(DIST)/jsshell-$(MOZ_PKG_PLATFORM).zip
++++++ mozilla-shared-nss-db.patch ++++++
From: Hans Petter Jansson <[email protected]>
Wolfgang Rosenauer <[email protected]>
Subject: use libnsssharedhelper if available at compile time
(can be disabled by exporting MOZ_XRE_NO_NSSHELPER=1)
References:
diff --git a/configure.in b/configure.in
--- a/configure.in
+++ b/configure.in
@@ -8207,16 +8207,31 @@ if test "$MOZ_ENABLE_SKIA"; then
MOZ_ENABLE_SKIA_GPU=1
AC_DEFINE(USE_SKIA_GPU)
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
fi
fi
AC_SUBST(MOZ_ENABLE_SKIA)
dnl ========================================================
+dnl Check for nss-shared-helper
+dnl ========================================================
+
+ PKG_CHECK_MODULES(NSSHELPER, nss-shared-helper,
+ [MOZ_ENABLE_NSSHELPER=1],
+ [MOZ_ENABLE_NSSHELPER=])
+
+if test "$MOZ_ENABLE_NSSHELPER"; then
+ AC_DEFINE(MOZ_ENABLE_NSSHELPER)
+fi
+AC_SUBST(MOZ_ENABLE_NSSHELPER)
+AC_SUBST_LIST(NSSHELPER_CFLAGS)
+AC_SUBST_LIST(NSSHELPER_LIBS)
+
+dnl ========================================================
dnl disable xul
dnl ========================================================
MOZ_ARG_DISABLE_BOOL(xul,
[ --disable-xul Disable XUL],
MOZ_XUL= )
if test "$MOZ_XUL"; then
AC_DEFINE(MOZ_XUL)
else
diff --git a/security/manager/ssl/src/moz.build
b/security/manager/ssl/src/moz.build
--- a/security/manager/ssl/src/moz.build
+++ b/security/manager/ssl/src/moz.build
@@ -77,16 +77,19 @@ SOURCES += [
'nsNSSVersion.cpp',
'PSMContentListener.cpp',
]
LOCAL_INCLUDES += [
'/security/manager/boot/src',
]
+CXXFLAGS += sorted(CONFIG['NSSHELPER_CFLAGS'])
+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS'])
+
if not CONFIG['MOZ_NO_SMART_CARDS']:
UNIFIED_SOURCES += [
'nsSmartCardMonitor.cpp',
]
if CONFIG['MOZ_XUL']:
UNIFIED_SOURCES += [
'nsCertTree.cpp',
diff --git a/security/manager/ssl/src/nsNSSComponent.cpp
b/security/manager/ssl/src/nsNSSComponent.cpp
--- a/security/manager/ssl/src/nsNSSComponent.cpp
+++ b/security/manager/ssl/src/nsNSSComponent.cpp
@@ -1,14 +1,21 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+#ifdef MOZ_ENABLE_NSSHELPER
+#pragma GCC visibility push(default)
+#include <nss-shared-helper.h>
+#pragma GCC visibility pop
+#include "prenv.h"
+#endif
+
#include "nsNSSComponent.h"
#include "ExtendedValidation.h"
#include "NSSCertDBTrustDomain.h"
#include "mozilla/Telemetry.h"
#include "nsAppDirectoryServiceDefs.h"
#include "nsCertVerificationThread.h"
#include "nsAppDirectoryServiceDefs.h"
@@ -996,17 +1003,31 @@ nsNSSComponent::InitializeNSS()
if (NS_FAILED(rv)) {
nsPSMInitPanic::SetPanic();
return NS_ERROR_NOT_AVAILABLE;
}
SECStatus init_rv = SECFailure;
if (!profileStr.IsEmpty()) {
// First try to initialize the NSS DB in read/write mode.
- SECStatus init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false);
+#ifdef MOZ_ENABLE_NSSHELPER
+ if (PR_GetEnv("MOZ_XRE_NO_NSSHELPER")) {
+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false);
+ } else {
+ uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE;
+ init_rv = ::nsshelp_open_db ("Firefox", profileStr.get(), flags);
+
+ if (init_rv != SECSuccess) {
+ PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("can not init NSS using
nsshelp_open_db in %s\n", profileStr.get()));
+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false);
+ }
+ }
+#else
+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false);
+#endif
// If that fails, attempt read-only mode.
if (init_rv != SECSuccess) {
PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("could not init NSS r/w in %s\n",
profileStr.get()));
init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), true);
}
if (init_rv != SECSuccess) {
PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("could not init in r/o either\n"));
}
diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
--- a/toolkit/library/moz.build
+++ b/toolkit/library/moz.build
@@ -208,16 +208,18 @@ if CONFIG['MOZ_B2G_CAMERA']:
'stagefright_omx',
]
if CONFIG['OS_ARCH'] == 'Linux' and CONFIG['OS_TARGET'] != 'Android':
OS_LIBS += [
'rt',
]
+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS'])
+
OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS']
OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS']
if CONFIG['MOZ_NATIVE_JPEG']:
OS_LIBS += CONFIG['MOZ_JPEG_LIBS']
if CONFIG['MOZ_NATIVE_PNG']:
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
++++++ mozilla-skia-be-le.patch ++++++
# HG changeset patch
# Parent c5d7373760d7abbd34f89cb60d4a45cba2c05379
Part 2 of
Bug 1136958 - gfx/layers/basic/BasicCompositor.cpp:20:56: fatal error:
skia/SkCanvas.h: No such file or directory when skia is disabled
diff --git a/gfx/skia/trunk/include/core/SkPreConfig.h
b/gfx/skia/trunk/include/core/SkPreConfig.h
--- a/gfx/skia/trunk/include/core/SkPreConfig.h
+++ b/gfx/skia/trunk/include/core/SkPreConfig.h
@@ -87,16 +87,24 @@
#if !defined(SK_WARN_UNUSED_RESULT)
#define SK_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#endif
//////////////////////////////////////////////////////////////////////
#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
+ #if defined(__BIG_ENDIAN__)
+ #define SK_CPU_BENDIAN
+ #elif defined(__LITTLE_ENDIAN__)
+ #define SK_CPU_LENDIAN
+ #endif
+#endif
+
+#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
#if defined(__sparc) || defined(__sparc__) || \
defined(_POWER) || defined(__powerpc__) || \
defined(__ppc__) || defined(__hppa) || \
defined(__PPC__) || defined(__PPC64__) || \
defined(_MIPSEB) || defined(__ARMEB__) || \
defined(__s390__) || \
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
(defined(__ia64) && defined(__BIG_ENDIAN__))
diff --git a/js/src/jsdtoa.cpp b/js/src/jsdtoa.cpp
--- a/js/src/jsdtoa.cpp
+++ b/js/src/jsdtoa.cpp
@@ -47,16 +47,17 @@ using namespace js;
static inline void* dtoa_malloc(size_t size) { return js_malloc(size); }
static inline void dtoa_free(void* p) { return js_free(p); }
#define NO_GLOBAL_STATE
#define NO_ERRNO
#define MALLOC dtoa_malloc
#define FREE dtoa_free
#include "dtoa.c"
+#undef CONST
/* Mapping of JSDToStrMode -> js_dtoa mode */
static const uint8_t dtoaModes[] = {
0, /* DTOSTR_STANDARD */
0, /* DTOSTR_STANDARD_EXPONENTIAL, */
3, /* DTOSTR_FIXED, */
2, /* DTOSTR_EXPONENTIAL, */
2}; /* DTOSTR_PRECISION */
++++++ mozilla-skia-bmo1136958.patch ++++++
>From a8ab3ec3542469c1d4e0741121eb1be17cc0acb0 Mon Sep 17 00:00:00 2001
From: Mike Hommey <[email protected]>
Date: Mon, 9 Mar 2015 08:42:19 +0900
Subject: [PATCH] Bug 1136958 - Reintroduce pixman code path removed in bug
1097776 for --disable-skia builds
---
gfx/layers/basic/BasicCompositor.cpp | 94 +++++++++++++++++++++++++++++++---
gfx/layers/basic/BasicLayerManager.cpp | 88 +++++++++++++++++++++++++++++--
2 files changed, 171 insertions(+), 11 deletions(-)
diff --git a/gfx/layers/basic/BasicCompositor.cpp
b/gfx/layers/basic/BasicCompositor.cpp
index 0bef076..000b591 100644
--- a/gfx/layers/basic/BasicCompositor.cpp
+++ b/gfx/layers/basic/BasicCompositor.cpp
@@ -17,8 +17,13 @@
#include <algorithm>
#include "ImageContainer.h"
#include "gfxPrefs.h"
+#ifdef MOZ_ENABLE_SKIA
#include "skia/SkCanvas.h" // for SkCanvas
#include "skia/SkBitmapDevice.h" // for SkBitmapDevice
+#else
+#define PIXMAN_DONT_DEFINE_STDINT
+#include "pixman.h" // for pixman_f_transform, etc
+#endif
namespace mozilla {
using namespace mozilla::gfx;
@@ -168,6 +173,7 @@ DrawSurfaceWithTextureCoords(DrawTarget *aDest,
mode, aMask, aMaskTransform, &matrix);
}
+#ifdef MOZ_ENABLE_SKIA
static SkMatrix
Matrix3DToSkia(const gfx3DMatrix& aMatrix)
{
@@ -186,10 +192,10 @@ Matrix3DToSkia(const gfx3DMatrix& aMatrix)
}
static void
-SkiaTransform(DataSourceSurface* aDest,
- DataSourceSurface* aSource,
- const gfx3DMatrix& aTransform,
- const Point& aDestOffset)
+Transform(DataSourceSurface* aDest,
+ DataSourceSurface* aSource,
+ const gfx3DMatrix& aTransform,
+ const Point& aDestOffset)
{
if (aTransform.IsSingular()) {
return;
@@ -225,6 +231,78 @@ SkiaTransform(DataSourceSurface* aDest,
SkRect destRect = SkRect::MakeXYWH(0, 0, srcSize.width, srcSize.height);
destCanvas.drawBitmapRectToRect(src, nullptr, destRect, &paint);
}
+#else
+static pixman_transform
+Matrix3DToPixman(const gfx3DMatrix& aMatrix)
+{
+ pixman_f_transform transform;
+
+ transform.m[0][0] = aMatrix._11;
+ transform.m[0][1] = aMatrix._21;
+ transform.m[0][2] = aMatrix._41;
+ transform.m[1][0] = aMatrix._12;
+ transform.m[1][1] = aMatrix._22;
+ transform.m[1][2] = aMatrix._42;
+ transform.m[2][0] = aMatrix._14;
+ transform.m[2][1] = aMatrix._24;
+ transform.m[2][2] = aMatrix._44;
+
+ pixman_transform result;
+ pixman_transform_from_pixman_f_transform(&result, &transform);
+
+ return result;
+}
+
+static void
+Transform(DataSourceSurface* aDest,
+ DataSourceSurface* aSource,
+ const gfx3DMatrix& aTransform,
+ const Point& aDestOffset)
+{
+ IntSize destSize = aDest->GetSize();
+ pixman_image_t* dest = pixman_image_create_bits(PIXMAN_a8r8g8b8,
+ destSize.width,
+ destSize.height,
+ (uint32_t*)aDest->GetData(),
+ aDest->Stride());
+
+ IntSize srcSize = aSource->GetSize();
+ pixman_image_t* src = pixman_image_create_bits(PIXMAN_a8r8g8b8,
+ srcSize.width,
+ srcSize.height,
+ (uint32_t*)aSource->GetData(),
+ aSource->Stride());
+
+ NS_ABORT_IF_FALSE(src && dest, "Failed to create pixman images?");
+
+ pixman_transform pixTransform = Matrix3DToPixman(aTransform);
+ pixman_transform pixTransformInverted;
+
+ // If the transform is singular then nothing would be drawn anyway, return
here
+ if (!pixman_transform_invert(&pixTransformInverted, &pixTransform)) {
+ pixman_image_unref(dest);
+ pixman_image_unref(src);
+ return;
+ }
+ pixman_image_set_transform(src, &pixTransformInverted);
+
+ pixman_image_composite32(PIXMAN_OP_SRC,
+ src,
+ nullptr,
+ dest,
+ aDestOffset.x,
+ aDestOffset.y,
+ 0,
+ 0,
+ 0,
+ 0,
+ destSize.width,
+ destSize.height);
+
+ pixman_image_unref(dest);
+ pixman_image_unref(src);
+}
+#endif
static inline IntRect
RoundOut(Rect r)
@@ -364,12 +442,16 @@ BasicCompositor::DrawQuad(const gfx::Rect& aRect,
RefPtr<SourceSurface> snapshot = dest->Snapshot();
RefPtr<DataSourceSurface> source = snapshot->GetDataSurface();
RefPtr<DataSourceSurface> temp =
- Factory::CreateDataSourceSurface(RoundOut(transformBounds).Size(),
SurfaceFormat::B8G8R8A8, true);
+ Factory::CreateDataSourceSurface(RoundOut(transformBounds).Size(),
SurfaceFormat::B8G8R8A8
+#ifdef MOZ_ENABLE_SKIA
+ , true
+#endif
+ );
if (NS_WARN_IF(!temp)) {
return;
}
- SkiaTransform(temp, source, new3DTransform, transformBounds.TopLeft());
+ Transform(temp, source, new3DTransform, transformBounds.TopLeft());
transformBounds.MoveTo(0, 0);
buffer->DrawSurface(temp, transformBounds, transformBounds);
diff --git a/gfx/layers/basic/BasicLayerManager.cpp
b/gfx/layers/basic/BasicLayerManager.cpp
index f4ec9e4..c849c27 100644
--- a/gfx/layers/basic/BasicLayerManager.cpp
+++ b/gfx/layers/basic/BasicLayerManager.cpp
@@ -46,8 +46,13 @@
#include "nsRect.h" // for nsIntRect
#include "nsRegion.h" // for nsIntRegion, etc
#include "nsTArray.h" // for nsAutoTArray
+#ifdef MOZ_ENABLE_SKIA
#include "skia/SkCanvas.h" // for SkCanvas
#include "skia/SkBitmapDevice.h" // for SkBitmapDevice
+#else
+#define PIXMAN_DONT_DEFINE_STDINT
+#include "pixman.h" // for pixman_f_transform, etc
+#endif
class nsIWidget;
namespace mozilla {
@@ -601,6 +606,7 @@ BasicLayerManager::SetRoot(Layer* aLayer)
mRoot = aLayer;
}
+#ifdef MOZ_ENABLE_SKIA
static SkMatrix
BasicLayerManager_Matrix3DToSkia(const gfx3DMatrix& aMatrix)
{
@@ -619,10 +625,10 @@ BasicLayerManager_Matrix3DToSkia(const gfx3DMatrix&
aMatrix)
}
static void
-SkiaTransform(const gfxImageSurface* aDest,
- RefPtr<DataSourceSurface> aSrc,
- const gfx3DMatrix& aTransform,
- gfxPoint aDestOffset)
+Transform(const gfxImageSurface* aDest,
+ RefPtr<DataSourceSurface> aSrc,
+ const gfx3DMatrix& aTransform,
+ gfxPoint aDestOffset)
{
if (aTransform.IsSingular()) {
return;
@@ -658,6 +664,78 @@ SkiaTransform(const gfxImageSurface* aDest,
SkRect destRect = SkRect::MakeXYWH(0, 0, srcSize.width, srcSize.height);
destCanvas.drawBitmapRectToRect(src, nullptr, destRect, &paint);
}
+#else
+static pixman_transform
+BasicLayerManager_Matrix3DToPixman(const gfx3DMatrix& aMatrix)
+{
+ pixman_f_transform transform;
+
+ transform.m[0][0] = aMatrix._11;
+ transform.m[0][1] = aMatrix._21;
+ transform.m[0][2] = aMatrix._41;
+ transform.m[1][0] = aMatrix._12;
+ transform.m[1][1] = aMatrix._22;
+ transform.m[1][2] = aMatrix._42;
+ transform.m[2][0] = aMatrix._14;
+ transform.m[2][1] = aMatrix._24;
+ transform.m[2][2] = aMatrix._44;
+
+ pixman_transform result;
+ pixman_transform_from_pixman_f_transform(&result, &transform);
+
+ return result;
+}
+
+static void
+Transform(const gfxImageSurface* aDest,
+ RefPtr<DataSourceSurface> aSrc,
+ const gfx3DMatrix& aTransform,
+ gfxPoint aDestOffset)
+{
+ IntSize destSize = ToIntSize(aDest->GetSize());
+ pixman_image_t* dest = pixman_image_create_bits(aDest->Format() ==
gfxImageFormat::ARGB32 ? PIXMAN_a8r8g8b8 : PIXMAN_x8r8g8b8,
+ destSize.width,
+ destSize.height,
+ (uint32_t*)aDest->Data(),
+ aDest->Stride());
+
+ IntSize srcSize = aSrc->GetSize();
+ pixman_image_t* src = pixman_image_create_bits(aSrc->GetFormat() ==
SurfaceFormat::B8G8R8A8 ? PIXMAN_a8r8g8b8 : PIXMAN_x8r8g8b8,
+ srcSize.width,
+ srcSize.height,
+ (uint32_t*)aSrc->GetData(),
+ aSrc->Stride());
+
+ NS_ABORT_IF_FALSE(src && dest, "Failed to create pixman images?");
+
+ pixman_transform pixTransform =
BasicLayerManager_Matrix3DToPixman(aTransform);
+ pixman_transform pixTransformInverted;
+
+ // If the transform is singular then nothing would be drawn anyway, return
here
+ if (!pixman_transform_invert(&pixTransformInverted, &pixTransform)) {
+ pixman_image_unref(dest);
+ pixman_image_unref(src);
+ return;
+ }
+ pixman_image_set_transform(src, &pixTransformInverted);
+
+ pixman_image_composite32(PIXMAN_OP_SRC,
+ src,
+ nullptr,
+ dest,
+ aDestOffset.x,
+ aDestOffset.y,
+ 0,
+ 0,
+ 0,
+ 0,
+ destSize.width,
+ destSize.height);
+
+ pixman_image_unref(dest);
+ pixman_image_unref(src);
+}
+#endif
/**
* Transform a surface using a gfx3DMatrix and blit to the destination if
@@ -699,7 +777,7 @@ Transform3D(RefPtr<SourceSurface> aSource,
gfx3DMatrix translation = gfx3DMatrix::Translation(aBounds.x, aBounds.y, 0);
// Transform the content and offset it such that the content begins at the
origin.
- SkiaTransform(destImage, aSource->GetDataSurface(), translation *
aTransform, offset);
+ Transform(destImage, aSource->GetDataSurface(), translation * aTransform,
offset);
// If we haven't actually drawn to aDest then return our temporary image so
// that the caller can do this.
--
2.3.0.4.g34b1174
++++++ mozilla.sh.in ++++++
#!/bin/sh
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org Code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Wolfgang Rosenauer <[email protected]>
# <[email protected]>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
##
## Usage:
##
## $ mozilla [args]
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.
cmdname=`basename $0`
##
## Variables
##
MOZ_DIST_BIN="%PREFIX"
MOZ_DIST_LIB="%PROGDIR"
MOZ_APPNAME="%APPNAME"
MOZ_PROGRAM="$MOZ_DIST_LIB/$MOZ_APPNAME"
MOZ_APP_LAUNCHER="$MOZ_DIST_LIB/$MOZ_APPNAME.sh"
if [ "$0" = "$MOZ_APP_LAUNCHER" ]; then
[ -h "/usr/bin/$MOZ_APPNAME" ] && \
_link=$(readlink -f "/usr/bin/$MOZ_APPNAME")
if [ "$_link" = "$MOZ_APP_LAUNCHER" ]; then
export MOZ_APP_LAUNCHER="/usr/bin/$MOZ_APPNAME"
fi
else
export MOZ_APP_LAUNCHER="/usr/bin/$MOZ_APPNAME"
fi
mozilla_lib=`file $MOZ_PROGRAM`
LIB=lib
echo $mozilla_lib | grep -q -E 'ELF.64-bit.*(x86-64|S/390|PowerPC)' && LIB=lib64
BROWSER_PLUGIN_DIR=/usr/$LIB/browser-plugins
if [ ! -d $BROWSER_PLUGIN_DIR ]; then
BROWSER_PLUGIN_DIR=/opt/netscape/plugins
fi
MOZILLA_FIVE_HOME="$MOZ_DIST_LIB"
export MOZILLA_FIVE_HOME
LD_LIBRARY_PATH=$MOZ_DIST_LIB${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
# needed for SUN Java under Xorg >= 7.2
export LIBXCB_ALLOW_SLOPPY_LOCK=1
##
if [ -z "$MOZ_PLUGIN_PATH" ]; then
export MOZ_PLUGIN_PATH=$BROWSER_PLUGIN_DIR
else
# make sure that BROWSER_PLUGIN_DIR is in MOZ_PLUGIN_PATH
echo "$MOZ_PLUGIN_PATH" | grep "$BROWSER_PLUGIN_DIR" 2>&1 >/dev/null
_retval=$?
if [ ${_retval} -ne 0 ]; then
export MOZ_PLUGIN_PATH=$MOZ_PLUGIN_PATH:$BROWSER_PLUGIN_DIR
fi
fi
# disable Gnome crash dialog (doesn't make sense anyway)
export GNOME_DISABLE_CRASH_DIALOG=1
moz_debug=0
script_args=""
pass_arg_count=0
while [ $# -gt $pass_arg_count ]
do
case "$1" in
-d | --debugger)
moz_debugger=$2;
if [ "${moz_debugger}" != "" ]; then
shift 2
moz_debug=1
else
echo "-d requires an argument"
exit 1
fi
;;
*)
# Move the unrecognized argument to the end of the list.
arg="$1"
shift
set -- "$@" "$arg"
pass_arg_count=`expr $pass_arg_count + 1`
;;
esac
done
if [ $moz_debug -eq 1 ]; then
tmpfile=`mktemp /tmp/mozargs.XXXXXX` || { echo "Cannot create temporary file"
>&2; exit 1; }
trap " [ -f \"$tmpfile\" ] && /bin/rm -f -- \"$tmpfile\"" 0 1 2 3 13 15
echo "set args ${1+"$@"}" > $tmpfile
echo "run" >> $tmpfile
echo "$moz_debugger $MOZ_PROGRAM -x $tmpfile"
exec $moz_debugger "$MOZ_PROGRAM" -x $tmpfile
else
exec $MOZ_PROGRAM "$@"
fi
++++++ source-stamp.txt ++++++
REV=a7ee2c1f2cba
REPO=http://hg.mozilla.org/releases/mozilla-release
++++++ spellcheck.js ++++++
pref("spellchecker.dictionary_path", "/usr/share/myspell");
++++++ toolkit-download-folder.patch ++++++
From: Wolfgang Rosenauer
Subject: Don't use localized Downloads unless XDG is set up
References:
https://bugzilla.novell.com/show_bug.cgi?id=501724
diff --git a/browser/components/preferences/main.js
b/browser/components/preferences/main.js
--- a/browser/components/preferences/main.js
+++ b/browser/components/preferences/main.js
@@ -408,17 +408,17 @@ var gMainPane = {
// and was available as an option in the 1.5 drop down. On XP this
// was in My Documents, on OSX it was in User Docs. In 2.0, we did
// away with the drop down option, although the special label was
// still supported for the folder if it existed. Because it was
// not exposed it was rarely used.
// With 3.0, a new desktop folder - 'Downloads' was introduced for
// platforms and versions that don't support a default system downloads
// folder. See nsDownloadManager for details.
- downloadFolder.label =
bundlePreferences.getString("downloadsFolderName");
+ downloadFolder.label = "Downloads";
iconUrlSpec = fph.getURLSpecFromFile(yield this._indexToFolder(1));
} else {
// 'Desktop'
downloadFolder.label = bundlePreferences.getString("desktopFolderName");
iconUrlSpec = fph.getURLSpecFromFile(yield
this._getDownloadsFolder("Desktop"));
}
downloadFolder.image = "moz-icon://" + iconUrlSpec + "?size=16";
}),
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp
b/toolkit/components/downloads/nsDownloadManager.cpp
--- a/toolkit/components/downloads/nsDownloadManager.cpp
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
@@ -1361,18 +1361,20 @@ nsDownloadManager::GetDefaultDownloadsDi
// Vista:
// Downloads
// XP/2K:
// My Documents/Downloads
// Linux:
// XDG user dir spec, with a fallback to Home/Downloads
nsXPIDLString folderName;
- mBundle->GetStringFromName(MOZ_UTF16("downloadsFolder"),
- getter_Copies(folderName));
+ // We don't want localized "Downloads" unless XDG is used
+ //mBundle->GetStringFromName(NS_LITERAL_STRING("downloadsFolder").get(),
+ // getter_Copies(folderName));
+ folderName.AssignLiteral("Downloads");
#if defined (XP_MACOSX)
rv = dirService->Get(NS_OSX_DEFAULT_DOWNLOAD_DIR,
NS_GET_IID(nsIFile),
getter_AddRefs(downloadDir));
NS_ENSURE_SUCCESS(rv, rv);
#elif defined(XP_WIN)
rv = dirService->Get(NS_WIN_DEFAULT_DOWNLOAD_DIR,