diff options
author | 宋文武 <iyzsong@gmail.com> | 2015-04-08 16:04:37 +0800 |
---|---|---|
committer | 宋文武 <iyzsong@gmail.com> | 2015-04-08 16:04:37 +0800 |
commit | cf3e3e374c4bd1c9f0f976fc8f02f66aff6417dc (patch) | |
tree | b4ce7938c855781af2e0a1e68b3588f96de7e7e1 /gnu/packages/patches | |
parent | 4ae7559fd62c03a800b010c228639f18b9f58006 (diff) | |
parent | 068a53c36dec5ace42cc3ea89060d9a485592f08 (diff) | |
download | guix-cf3e3e374c4bd1c9f0f976fc8f02f66aff6417dc.tar guix-cf3e3e374c4bd1c9f0f976fc8f02f66aff6417dc.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/icecat-CVE-2015-0817.patch | 44 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-CVE-2015-0818-pt1.patch | 67 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-CVE-2015-0818-pt2.patch | 28 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-bug-1127780.patch | 25 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-bug-1144991.patch | 76 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-bug-1145870.patch | 43 | ||||
-rw-r--r-- | gnu/packages/patches/icecat-bug-1146339.patch | 162 | ||||
-rw-r--r-- | gnu/packages/patches/librep-rules.mk.patch | 30 | ||||
-rw-r--r-- | gnu/packages/patches/linux-libre-libreboot-fix.patch | 37 | ||||
-rw-r--r-- | gnu/packages/patches/linux-libre-vblank-fix.patch | 175 | ||||
-rw-r--r-- | gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch | 53 | ||||
-rw-r--r-- | gnu/packages/patches/pulseaudio-longer-test-timeout.patch | 13 | ||||
-rw-r--r-- | gnu/packages/patches/source-highlight-regexrange-test.patch | 15 | ||||
-rw-r--r-- | gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch | 45 |
14 files changed, 323 insertions, 490 deletions
diff --git a/gnu/packages/patches/icecat-CVE-2015-0817.patch b/gnu/packages/patches/icecat-CVE-2015-0817.patch deleted file mode 100644 index bb530a535d..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-0817.patch +++ /dev/null @@ -1,44 +0,0 @@ -From cedbdf8290018fbef65458e9e438c72adf2c2775 Mon Sep 17 00:00:00 2001 -From: Steve Fink <sfink@mozilla.com> -Date: Thu, 19 Mar 2015 15:46:24 -0700 -Subject: [PATCH] Bug 1145255. r=luke, a=lmandel - ---- - js/src/jit/AsmJS.cpp | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/js/src/jit/AsmJS.cpp b/js/src/jit/AsmJS.cpp -index 302b5ab..1b8eed6 100644 ---- a/js/src/jit/AsmJS.cpp -+++ b/js/src/jit/AsmJS.cpp -@@ -14,6 +14,7 @@ - - #include "jsmath.h" - #include "jsprf.h" -+#include "jsutil.h" - #include "jsworkers.h" - #include "prmjtime.h" - -@@ -3432,9 +3433,17 @@ FoldMaskedArrayIndex(FunctionCompiler &f, ParseNode **indexExpr, int32_t *mask, - if (IsLiteralOrConstInt(f, maskNode, &mask2)) { - // Flag the access to skip the bounds check if the mask ensures that an 'out of - // bounds' access can not occur based on the current heap length constraint. -- if (mask2 == 0 || -- CountLeadingZeroes32(f.m().minHeapLength() - 1) <= CountLeadingZeroes32(mask2)) { -+ if (mask2 == 0) { - *needsBoundsCheck = NO_BOUNDS_CHECK; -+ } else { -+ uint32_t minHeap = f.m().minHeapLength(); -+ uint32_t minHeapZeroes = CountLeadingZeroes32(minHeap - 1); -+ uint32_t maskZeroes = CountLeadingZeroes32(mask2); -+ if ((minHeapZeroes < maskZeroes) || -+ (IsPowerOfTwo(minHeap) && minHeapZeroes == maskZeroes)) -+ { -+ *needsBoundsCheck = NO_BOUNDS_CHECK; -+ } - } - *mask &= mask2; - *indexExpr = indexNode; --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-CVE-2015-0818-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-0818-pt1.patch deleted file mode 100644 index 5d396eed6b..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-0818-pt1.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 79dddb16aaa58f5b5cef49dac6d234f500af3baf Mon Sep 17 00:00:00 2001 -From: Olli Pettay <Olli.Pettay@helsinki.fi> -Date: Thu, 19 Mar 2015 21:53:32 -0400 -Subject: [PATCH] Bug 1144988 - Don't let other pages to load while doing - scroll-to-anchor. r=bz, a=lmandel - ---- - docshell/base/nsDocShell.cpp | 23 ++++++++++++++--------- - docshell/base/nsDocShell.h | 1 + - 2 files changed, 15 insertions(+), 9 deletions(-) - -diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp -index 887c910..14ff3f2 100644 ---- a/docshell/base/nsDocShell.cpp -+++ b/docshell/base/nsDocShell.cpp -@@ -4204,8 +4204,8 @@ nsDocShell::IsPrintingOrPP(bool aDisplayErrorDialog) - bool - nsDocShell::IsNavigationAllowed(bool aDisplayPrintErrorDialog) - { -- bool isAllowed = !IsPrintingOrPP(aDisplayPrintErrorDialog) && !mFiredUnloadEvent; -- if (!isAllowed) { -+ bool isAllowed = !IsPrintingOrPP(aDisplayPrintErrorDialog) && -+ !mFiredUnloadEvent && !mBlockNavigation; if (!isAllowed) { - return false; - } - if (!mContentViewer) { -@@ -9321,13 +9321,18 @@ nsDocShell::InternalLoad(nsIURI * aURI, - GetCurScrollPos(ScrollOrientation_X, &cx); - GetCurScrollPos(ScrollOrientation_Y, &cy); - -- // ScrollToAnchor doesn't necessarily cause us to scroll the window; -- // the function decides whether a scroll is appropriate based on the -- // arguments it receives. But even if we don't end up scrolling, -- // ScrollToAnchor performs other important tasks, such as informing -- // the presShell that we have a new hash. See bug 680257. -- rv = ScrollToAnchor(curHash, newHash, aLoadType); -- NS_ENSURE_SUCCESS(rv, rv); -+ { -+ AutoRestore<bool> scrollingToAnchor(mBlockNavigation); -+ mBlockNavigation = true; -+ -+ // ScrollToAnchor doesn't necessarily cause us to scroll the window; -+ // the function decides whether a scroll is appropriate based on the -+ // arguments it receives. But even if we don't end up scrolling, -+ // ScrollToAnchor performs other important tasks, such as informing -+ // the presShell that we have a new hash. See bug 680257. -+ rv = ScrollToAnchor(curHash, newHash, aLoadType); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } - - // Reset mLoadType to its original value once we exit this block, - // because this short-circuited load might have started after a -diff --git a/docshell/base/nsDocShell.h b/docshell/base/nsDocShell.h -index c191777..be353ee 100644 ---- a/docshell/base/nsDocShell.h -+++ b/docshell/base/nsDocShell.h -@@ -835,6 +835,7 @@ protected: - bool mInPrivateBrowsing; - bool mUseRemoteTabs; - bool mDeviceSizeIsPageSize; -+ bool mBlockNavigation; - - // Because scriptability depends on the mAllowJavascript values of our - // ancestors, we cache the effective scriptability and recompute it when --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-CVE-2015-0818-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-0818-pt2.patch deleted file mode 100644 index 4eac5df4db..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-0818-pt2.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 83364c747c421b191f9d4012896a9e5a1d5223ad Mon Sep 17 00:00:00 2001 -From: Kyle Huey <khuey@kylehuey.com> -Date: Fri, 20 Mar 2015 19:15:13 -0700 -Subject: [PATCH] Bug 1144988. r=bz a=lmandel - ---- - docshell/base/nsDocShell.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp -index 4cddcef..bdf88a5cf 100644 ---- a/docshell/base/nsDocShell.cpp -+++ b/docshell/base/nsDocShell.cpp -@@ -1322,9 +1322,10 @@ nsDocShell::LoadURI(nsIURI * aURI, - - // Note: we allow loads to get through here even if mFiredUnloadEvent is - // true; that case will get handled in LoadInternal or LoadHistoryEntry. -- if (IsPrintingOrPP()) { -+ if (IsPrintingOrPP() || mBlockNavigation) { - return NS_OK; // JS may not handle returning of an error code - } -+ - nsCOMPtr<nsIURI> referrer; - nsCOMPtr<nsIInputStream> postStream; - nsCOMPtr<nsIInputStream> headersStream; --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-bug-1127780.patch b/gnu/packages/patches/icecat-bug-1127780.patch deleted file mode 100644 index c433616087..0000000000 --- a/gnu/packages/patches/icecat-bug-1127780.patch +++ /dev/null @@ -1,25 +0,0 @@ -From cf1de3d04302841aaa05aed8364da3399cbca9b4 Mon Sep 17 00:00:00 2001 -From: Bobby Holley <bobbyholley@gmail.com> -Date: Tue, 17 Feb 2015 17:47:12 -0500 -Subject: [PATCH] Bug 1127780 - Add null check. r=bz, a=bkerensa - ---- - js/xpconnect/wrappers/XrayWrapper.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/js/xpconnect/wrappers/XrayWrapper.h b/js/xpconnect/wrappers/XrayWrapper.h -index ead095f1..cc8c580 100644 ---- a/js/xpconnect/wrappers/XrayWrapper.h -+++ b/js/xpconnect/wrappers/XrayWrapper.h -@@ -131,7 +131,7 @@ class XrayWrapper : public Base { - { - if (!Base::getPrototypeOf(cx, wrapper, protop)) - return false; -- if (WrapperFactory::IsXrayWrapper(protop)) -+ if (!protop || WrapperFactory::IsXrayWrapper(protop)) - return true; - - protop.set(JS_GetObjectPrototype(cx, wrapper)); --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-bug-1144991.patch b/gnu/packages/patches/icecat-bug-1144991.patch deleted file mode 100644 index 5632e37eb3..0000000000 --- a/gnu/packages/patches/icecat-bug-1144991.patch +++ /dev/null @@ -1,76 +0,0 @@ -From ae49ed04f54c2f78d6ba7e545e0099602a3270fa Mon Sep 17 00:00:00 2001 -From: Boris Zbarsky <bzbarsky@mit.edu> -Date: Thu, 19 Mar 2015 18:58:44 -0400 -Subject: [PATCH] Bug 1144991 - Be a bit more restrictive about when a - URI_IS_UI_RESOURCE source is allowed to link to a URI_IS_UI_RESOURCE URI that - doesn't have the same scheme. r=bholley, a=abillings - ---- - caps/src/nsScriptSecurityManager.cpp | 38 +++++++++++++++++++++++++----------- - 1 file changed, 27 insertions(+), 11 deletions(-) - -diff --git a/caps/src/nsScriptSecurityManager.cpp b/caps/src/nsScriptSecurityManager.cpp -index 3587358..6577b95 100644 ---- a/caps/src/nsScriptSecurityManager.cpp -+++ b/caps/src/nsScriptSecurityManager.cpp -@@ -770,12 +770,31 @@ nsScriptSecurityManager::CheckLoadURIWithPrincipal(nsIPrincipal* aPrincipal, - NS_ENSURE_SUCCESS(rv, rv); - if (hasFlags) { - if (aFlags & nsIScriptSecurityManager::ALLOW_CHROME) { -+ -+ // For now, don't change behavior for resource:// or moz-icon:// and -+ // just allow them. - if (!targetScheme.EqualsLiteral("chrome")) { -- // for now don't change behavior for resource: or moz-icon: - return NS_OK; - } - -- // allow load only if chrome package is whitelisted -+ // Allow a URI_IS_UI_RESOURCE source to link to a URI_IS_UI_RESOURCE -+ // target if ALLOW_CHROME is set. -+ // -+ // ALLOW_CHROME is a flag that we pass on all loads _except_ docshell -+ // loads (since docshell loads run the loaded content with its origin -+ // principal). So we're effectively allowing resource://, chrome://, -+ // and moz-icon:// source URIs to load resource://, chrome://, and -+ // moz-icon:// files, so long as they're not loading it as a document. -+ bool sourceIsUIResource; -+ rv = NS_URIChainHasFlags(sourceBaseURI, -+ nsIProtocolHandler::URI_IS_UI_RESOURCE, -+ &sourceIsUIResource); -+ NS_ENSURE_SUCCESS(rv, rv); -+ if (sourceIsUIResource) { -+ return NS_OK; -+ } -+ -+ // Allow the load only if the chrome package is whitelisted. - nsCOMPtr<nsIXULChromeRegistry> reg(do_GetService( - NS_CHROMEREGISTRY_CONTRACTID)); - if (reg) { -@@ -787,17 +806,14 @@ nsScriptSecurityManager::CheckLoadURIWithPrincipal(nsIPrincipal* aPrincipal, - } - } - -- // resource: and chrome: are equivalent, securitywise -- // That's bogus!! Fix this. But watch out for -- // the view-source stylesheet? -- bool sourceIsChrome; -- rv = NS_URIChainHasFlags(sourceBaseURI, -- nsIProtocolHandler::URI_IS_UI_RESOURCE, -- &sourceIsChrome); -- NS_ENSURE_SUCCESS(rv, rv); -- if (sourceIsChrome) { -+ // Special-case the hidden window: it's allowed to load -+ // URI_IS_UI_RESOURCE no matter what. Bug 1145470 tracks removing this. -+ nsAutoCString sourceSpec; -+ if (NS_SUCCEEDED(sourceBaseURI->GetSpec(sourceSpec)) && -+ sourceSpec.EqualsLiteral("resource://gre-resources/hiddenWindow.html")) { - return NS_OK; - } -+ - if (reportErrors) { - ReportError(nullptr, errorTag, sourceURI, aTargetURI); - } --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-bug-1145870.patch b/gnu/packages/patches/icecat-bug-1145870.patch deleted file mode 100644 index 34a018c697..0000000000 --- a/gnu/packages/patches/icecat-bug-1145870.patch +++ /dev/null @@ -1,43 +0,0 @@ -From a40e2ebc2ab57dacb539d4e49ed4193764ff7112 Mon Sep 17 00:00:00 2001 -From: Kyle Huey <khuey@kylehuey.com> -Date: Fri, 20 Mar 2015 19:05:56 -0700 -Subject: [PATCH] Bug 1145870. r=bz a=lmandel - ---- - docshell/base/nsDocShell.cpp | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp -index 14ff3f2..4cddcef 100644 ---- a/docshell/base/nsDocShell.cpp -+++ b/docshell/base/nsDocShell.cpp -@@ -8900,6 +8900,8 @@ nsDocShell::InternalLoad(nsIURI * aURI, - - NS_ENSURE_TRUE(!mIsBeingDestroyed, NS_ERROR_NOT_AVAILABLE); - -+ NS_ENSURE_TRUE(!mBlockNavigation, NS_ERROR_UNEXPECTED); -+ - // wyciwyg urls can only be loaded through history. Any normal load of - // wyciwyg through docshell is illegal. Disallow such loads. - if (aLoadType & LOAD_CMD_NORMAL) { -@@ -12570,7 +12572,7 @@ nsDocShell::OnLinkClick(nsIContent* aContent, - { - NS_ASSERTION(NS_IsMainThread(), "wrong thread"); - -- if (!IsOKToLoadURI(aURI)) { -+ if (!IsOKToLoadURI(aURI) || mBlockNavigation) { - return NS_OK; - } - -@@ -12626,7 +12628,7 @@ nsDocShell::OnLinkClickSync(nsIContent *aContent, - *aRequest = nullptr; - } - -- if (!IsOKToLoadURI(aURI)) { -+ if (!IsOKToLoadURI(aURI) || mBlockNavigation) { - return NS_OK; - } - --- -2.2.1 - diff --git a/gnu/packages/patches/icecat-bug-1146339.patch b/gnu/packages/patches/icecat-bug-1146339.patch deleted file mode 100644 index 9d858523b9..0000000000 --- a/gnu/packages/patches/icecat-bug-1146339.patch +++ /dev/null @@ -1,162 +0,0 @@ -From 4ca86283a71427f27e810d77c8e75418f6428457 Mon Sep 17 00:00:00 2001 -From: Olli Pettay <Olli.Pettay@helsinki.fi> -Date: Mon, 23 Mar 2015 22:23:53 -0400 -Subject: [PATCH] Bug 1146339 - Do anchor scrolling right before dispatching - popstate/hashchange. r=bz, a=lmandel - ---- - docshell/base/nsDocShell.cpp | 64 +++++++++++++++++++++----------------------- - docshell/base/nsDocShell.h | 1 - - 2 files changed, 30 insertions(+), 35 deletions(-) - -diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp -index bdf88a5cf..efb6a6e 100644 ---- a/docshell/base/nsDocShell.cpp -+++ b/docshell/base/nsDocShell.cpp -@@ -1322,7 +1322,7 @@ nsDocShell::LoadURI(nsIURI * aURI, - - // Note: we allow loads to get through here even if mFiredUnloadEvent is - // true; that case will get handled in LoadInternal or LoadHistoryEntry. -- if (IsPrintingOrPP() || mBlockNavigation) { -+ if (IsPrintingOrPP()) { - return NS_OK; // JS may not handle returning of an error code - } - -@@ -4206,7 +4206,8 @@ bool - nsDocShell::IsNavigationAllowed(bool aDisplayPrintErrorDialog) - { - bool isAllowed = !IsPrintingOrPP(aDisplayPrintErrorDialog) && -- !mFiredUnloadEvent && !mBlockNavigation; if (!isAllowed) { -+ !mFiredUnloadEvent; -+ if (!isAllowed) { - return false; - } - if (!mContentViewer) { -@@ -8901,8 +8902,6 @@ nsDocShell::InternalLoad(nsIURI * aURI, - - NS_ENSURE_TRUE(!mIsBeingDestroyed, NS_ERROR_NOT_AVAILABLE); - -- NS_ENSURE_TRUE(!mBlockNavigation, NS_ERROR_UNEXPECTED); -- - // wyciwyg urls can only be loaded through history. Any normal load of - // wyciwyg through docshell is illegal. Disallow such loads. - if (aLoadType & LOAD_CMD_NORMAL) { -@@ -9324,19 +9323,6 @@ nsDocShell::InternalLoad(nsIURI * aURI, - GetCurScrollPos(ScrollOrientation_X, &cx); - GetCurScrollPos(ScrollOrientation_Y, &cy); - -- { -- AutoRestore<bool> scrollingToAnchor(mBlockNavigation); -- mBlockNavigation = true; -- -- // ScrollToAnchor doesn't necessarily cause us to scroll the window; -- // the function decides whether a scroll is appropriate based on the -- // arguments it receives. But even if we don't end up scrolling, -- // ScrollToAnchor performs other important tasks, such as informing -- // the presShell that we have a new hash. See bug 680257. -- rv = ScrollToAnchor(curHash, newHash, aLoadType); -- NS_ENSURE_SUCCESS(rv, rv); -- } -- - // Reset mLoadType to its original value once we exit this block, - // because this short-circuited load might have started after a - // normal, network load, and we don't want to clobber its load type. -@@ -9424,16 +9410,6 @@ nsDocShell::InternalLoad(nsIURI * aURI, - mOSHE->SetCacheKey(cacheKey); - } - -- /* restore previous position of scroller(s), if we're moving -- * back in history (bug 59774) -- */ -- if (mOSHE && (aLoadType == LOAD_HISTORY || aLoadType == LOAD_RELOAD_NORMAL)) -- { -- nscoord bx, by; -- mOSHE->GetScrollPosition(&bx, &by); -- SetCurScrollPosEx(bx, by); -- } -- - /* Restore the original LSHE if we were loading something - * while short-circuited load was initiated. - */ -@@ -9471,12 +9447,36 @@ nsDocShell::InternalLoad(nsIURI * aURI, - - SetDocCurrentStateObj(mOSHE); - -+ // Inform the favicon service that the favicon for oldURI also -+ // applies to aURI. -+ CopyFavicon(currentURI, aURI, mInPrivateBrowsing); -+ -+ nsRefPtr<nsGlobalWindow> win = mScriptGlobal ? -+ mScriptGlobal->GetCurrentInnerWindowInternal() : nullptr; -+ -+ // ScrollToAnchor doesn't necessarily cause us to scroll the window; -+ // the function decides whether a scroll is appropriate based on the -+ // arguments it receives. But even if we don't end up scrolling, -+ // ScrollToAnchor performs other important tasks, such as informing -+ // the presShell that we have a new hash. See bug 680257. -+ rv = ScrollToAnchor(curHash, newHash, aLoadType); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ /* restore previous position of scroller(s), if we're moving -+ * back in history (bug 59774) -+ */ -+ if (mOSHE && (aLoadType == LOAD_HISTORY || -+ aLoadType == LOAD_RELOAD_NORMAL)) { -+ nscoord bx, by; -+ mOSHE->GetScrollPosition(&bx, &by); -+ SetCurScrollPosEx(bx, by); -+ } -+ - // Dispatch the popstate and hashchange events, as appropriate. - // - // The event dispatch below can cause us to re-enter script and - // destroy the docshell, nulling out mScriptGlobal. Hold a stack - // reference to avoid null derefs. See bug 914521. -- nsRefPtr<nsGlobalWindow> win = mScriptGlobal; - if (win) { - // Fire a hashchange event URIs differ, and only in their hashes. - bool doHashchange = sameExceptHashes && !curHash.Equals(newHash); -@@ -9492,10 +9492,6 @@ nsDocShell::InternalLoad(nsIURI * aURI, - } - } - -- // Inform the favicon service that the favicon for oldURI also -- // applies to aURI. -- CopyFavicon(currentURI, aURI, mInPrivateBrowsing); -- - return NS_OK; - } - } -@@ -12573,7 +12569,7 @@ nsDocShell::OnLinkClick(nsIContent* aContent, - { - NS_ASSERTION(NS_IsMainThread(), "wrong thread"); - -- if (!IsOKToLoadURI(aURI) || mBlockNavigation) { -+ if (!IsOKToLoadURI(aURI)) { - return NS_OK; - } - -@@ -12629,7 +12625,7 @@ nsDocShell::OnLinkClickSync(nsIContent *aContent, - *aRequest = nullptr; - } - -- if (!IsOKToLoadURI(aURI) || mBlockNavigation) { -+ if (!IsOKToLoadURI(aURI)) { - return NS_OK; - } - -diff --git a/docshell/base/nsDocShell.h b/docshell/base/nsDocShell.h -index be353ee..c191777 100644 ---- a/docshell/base/nsDocShell.h -+++ b/docshell/base/nsDocShell.h -@@ -835,7 +835,6 @@ protected: - bool mInPrivateBrowsing; - bool mUseRemoteTabs; - bool mDeviceSizeIsPageSize; -- bool mBlockNavigation; - - // Because scriptability depends on the mAllowJavascript values of our - // ancestors, we cache the effective scriptability and recompute it when --- -2.2.1 - diff --git a/gnu/packages/patches/librep-rules.mk.patch b/gnu/packages/patches/librep-rules.mk.patch deleted file mode 100644 index 4ea2a3ae1b..0000000000 --- a/gnu/packages/patches/librep-rules.mk.patch +++ /dev/null @@ -1,30 +0,0 @@ -rules.mk.in: Don't set prefix, datadir, libdir, datarootdir and repdir. -rules.mk.in: Use pkg-config to get the absolute path for repcommonexedir. - -Merged into upstream: <https://github.com/SawfishWM/librep/commit/a1f2db721aa5055e90f6a76fde625946340ed8cf>. - ---- librep_0.92.4.orig/rules.mk.in 2015-01-31 23:21:59.614751496 +0800 -+++ librep_0.92.4/rules.mk.in 2015-02-02 18:56:55.097171657 +0800 -@@ -1,18 +1,10 @@ - # rules.mk - --prefix=@prefix@ --datadir=@datadir@ --libdir=@libdir@ -+repcommonexecdir?=$(shell pkg-config --variable=repcommonexecdir librep) -+rpath_repcommonexecdir:=$(repcommonexecdir) - --# shut up configure --datarootdir=@datarootdir@ -- --repdir=@repdir@ --repcommonexecdir=@repcommonexecdir@ --rpath_repcommonexecdir=@repcommonexecdir@ -- --rep_LIBTOOL=$(repcommonexecdir)/libtool --tag CC --rep_INSTALL_ALIASES=$(repcommonexecdir)/install-aliases -+rep_LIBTOOL:=$(repcommonexecdir)/libtool --tag CC -+rep_INSTALL_ALIASES:=$(repcommonexecdir)/install-aliases - - # use this like: - # foo.la : foo.lo bar.lo diff --git a/gnu/packages/patches/linux-libre-libreboot-fix.patch b/gnu/packages/patches/linux-libre-libreboot-fix.patch new file mode 100644 index 0000000000..d340a99fcb --- /dev/null +++ b/gnu/packages/patches/linux-libre-libreboot-fix.patch @@ -0,0 +1,37 @@ +This patch fixes linux-libre-3.19.x on Libreboot X60 machines. +Copied from https://bugzilla.kernel.org/show_bug.cgi?id=93171#c25 + +--- a/drivers/gpu/drm/i915/i915_irq.c ++++ a/drivers/gpu/drm/i915/i915_irq.c +@@ -3598,14 +3598,12 @@ static int i8xx_irq_postinstall(struct drm_device *dev) + ~(I915_DISPLAY_PIPE_A_EVENT_INTERRUPT | + I915_DISPLAY_PIPE_B_EVENT_INTERRUPT | + I915_DISPLAY_PLANE_A_FLIP_PENDING_INTERRUPT | +- I915_DISPLAY_PLANE_B_FLIP_PENDING_INTERRUPT | +- I915_RENDER_COMMAND_PARSER_ERROR_INTERRUPT); ++ I915_DISPLAY_PLANE_B_FLIP_PENDING_INTERRUPT); + I915_WRITE16(IMR, dev_priv->irq_mask); + + I915_WRITE16(IER, + I915_DISPLAY_PIPE_A_EVENT_INTERRUPT | + I915_DISPLAY_PIPE_B_EVENT_INTERRUPT | +- I915_RENDER_COMMAND_PARSER_ERROR_INTERRUPT | + I915_USER_INTERRUPT); + POSTING_READ16(IER); + +@@ -3767,14 +3765,12 @@ static int i915_irq_postinstall(struct drm_device *dev) + I915_DISPLAY_PIPE_A_EVENT_INTERRUPT | + I915_DISPLAY_PIPE_B_EVENT_INTERRUPT | + I915_DISPLAY_PLANE_A_FLIP_PENDING_INTERRUPT | +- I915_DISPLAY_PLANE_B_FLIP_PENDING_INTERRUPT | +- I915_RENDER_COMMAND_PARSER_ERROR_INTERRUPT); ++ I915_DISPLAY_PLANE_B_FLIP_PENDING_INTERRUPT); + + enable_mask = + I915_ASLE_INTERRUPT | + I915_DISPLAY_PIPE_A_EVENT_INTERRUPT | + I915_DISPLAY_PIPE_B_EVENT_INTERRUPT | +- I915_RENDER_COMMAND_PARSER_ERROR_INTERRUPT | + I915_USER_INTERRUPT; + + if (I915_HAS_HOTPLUG(dev)) { diff --git a/gnu/packages/patches/linux-libre-vblank-fix.patch b/gnu/packages/patches/linux-libre-vblank-fix.patch new file mode 100644 index 0000000000..7f242cfcc1 --- /dev/null +++ b/gnu/packages/patches/linux-libre-vblank-fix.patch @@ -0,0 +1,175 @@ +From f9b61ff6bce9a44555324b29e593fdffc9a115bc Mon Sep 17 00:00:00 2001 +From: Daniel Vetter <daniel.vetter@ffwll.ch> +Date: Wed, 7 Jan 2015 13:54:39 +0100 +Subject: [PATCH] drm/i915: Push vblank enable/disable past + encoder->enable/disable +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +It is platform/output depenedent when exactly the pipe will start +running. Sometimes we just need the (cpu) pipe enabled, in other cases +the pch transcoder is enough and in yet other cases the (DP) port is +sending the frame start signal. + +In a perfect world we'd put the drm_crtc_vblank_on call exactly where +the pipe starts running, but due to cloning and similar things this +will get messy. And the current approach of picking the most +conservative place for all combinations also doesn't work since that +results in legit vblank waits (in encoder->enable hooks, e.g. the 2 +vblank waits for sdvo) failing. + +Completely going back to the old world before + +commit 51e31d49c89055299e34b8f44d13f70e19aaaad1 +Author: Daniel Vetter <daniel.vetter@ffwll.ch> +Date: Mon Sep 15 12:36:02 2014 +0200 + + drm/i915: Use generic vblank wait + +isn't great either since screaming when the vblank wait work because +the pipe is off is kinda nice. + +Pick a compromise and move the drm_crtc_vblank_on right before the +encoder->enable call. This is a lie on some outputs/platforms, but +after the ->enable callback the pipe is guaranteed to run everywhere. +So not that bad really. Suggested by Ville. + +v2: Same treatment for drm_crtc_vblank_off and encoder->disable: I've +missed the ibx pipe B select w/a, which also has a vblank wait in the +disable function (while the pipe is obviously still running). + +Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> +Cc: Chris Wilson <chris@chris-wilson.co.uk> +Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> +Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> +--- + drivers/gpu/drm/i915/intel_display.c | 42 ++++++++++++++++++------------------ + 1 file changed, 21 insertions(+), 21 deletions(-) + +diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c +index a1dbe74..e224820 100644 +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -4301,15 +4301,15 @@ static void ironlake_crtc_enable(struct drm_crtc *crtc) + if (intel_crtc->config.has_pch_encoder) + ironlake_pch_enable(crtc); + ++ assert_vblank_disabled(crtc); ++ drm_crtc_vblank_on(crtc); ++ + for_each_encoder_on_crtc(dev, crtc, encoder) + encoder->enable(encoder); + + if (HAS_PCH_CPT(dev)) + cpt_verify_modeset(dev, intel_crtc->pipe); + +- assert_vblank_disabled(crtc); +- drm_crtc_vblank_on(crtc); +- + intel_crtc_enable_planes(crtc); + } + +@@ -4421,14 +4421,14 @@ static void haswell_crtc_enable(struct drm_crtc *crtc) + if (intel_crtc->config.dp_encoder_is_mst) + intel_ddi_set_vc_payload_alloc(crtc, true); + ++ assert_vblank_disabled(crtc); ++ drm_crtc_vblank_on(crtc); ++ + for_each_encoder_on_crtc(dev, crtc, encoder) { + encoder->enable(encoder); + intel_opregion_notify_encoder(encoder, true); + } + +- assert_vblank_disabled(crtc); +- drm_crtc_vblank_on(crtc); +- + /* If we change the relative order between pipe/planes enabling, we need + * to change the workaround. */ + haswell_mode_set_planes_workaround(intel_crtc); +@@ -4479,12 +4479,12 @@ static void ironlake_crtc_disable(struct drm_crtc *crtc) + + intel_crtc_disable_planes(crtc); + +- drm_crtc_vblank_off(crtc); +- assert_vblank_disabled(crtc); +- + for_each_encoder_on_crtc(dev, crtc, encoder) + encoder->disable(encoder); + ++ drm_crtc_vblank_off(crtc); ++ assert_vblank_disabled(crtc); ++ + if (intel_crtc->config.has_pch_encoder) + intel_set_pch_fifo_underrun_reporting(dev_priv, pipe, false); + +@@ -4544,14 +4544,14 @@ static void haswell_crtc_disable(struct drm_crtc *crtc) + + intel_crtc_disable_planes(crtc); + +- drm_crtc_vblank_off(crtc); +- assert_vblank_disabled(crtc); +- + for_each_encoder_on_crtc(dev, crtc, encoder) { + intel_opregion_notify_encoder(encoder, false); + encoder->disable(encoder); + } + ++ drm_crtc_vblank_off(crtc); ++ assert_vblank_disabled(crtc); ++ + if (intel_crtc->config.has_pch_encoder) + intel_set_pch_fifo_underrun_reporting(dev_priv, TRANSCODER_A, + false); +@@ -5021,12 +5021,12 @@ static void valleyview_crtc_enable(struct drm_crtc *crtc) + intel_update_watermarks(crtc); + intel_enable_pipe(intel_crtc); + +- for_each_encoder_on_crtc(dev, crtc, encoder) +- encoder->enable(encoder); +- + assert_vblank_disabled(crtc); + drm_crtc_vblank_on(crtc); + ++ for_each_encoder_on_crtc(dev, crtc, encoder) ++ encoder->enable(encoder); ++ + intel_crtc_enable_planes(crtc); + + /* Underruns don't raise interrupts, so check manually. */ +@@ -5082,12 +5082,12 @@ static void i9xx_crtc_enable(struct drm_crtc *crtc) + intel_update_watermarks(crtc); + intel_enable_pipe(intel_crtc); + +- for_each_encoder_on_crtc(dev, crtc, encoder) +- encoder->enable(encoder); +- + assert_vblank_disabled(crtc); + drm_crtc_vblank_on(crtc); + ++ for_each_encoder_on_crtc(dev, crtc, encoder) ++ encoder->enable(encoder); ++ + intel_crtc_enable_planes(crtc); + + /* +@@ -5159,12 +5159,12 @@ static void i9xx_crtc_disable(struct drm_crtc *crtc) + */ + intel_wait_for_vblank(dev, pipe); + +- drm_crtc_vblank_off(crtc); +- assert_vblank_disabled(crtc); +- + for_each_encoder_on_crtc(dev, crtc, encoder) + encoder->disable(encoder); + ++ drm_crtc_vblank_off(crtc); ++ assert_vblank_disabled(crtc); ++ + intel_disable_pipe(intel_crtc); + + i9xx_pfit_disable(intel_crtc); +-- +2.2.1 + diff --git a/gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch b/gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch new file mode 100644 index 0000000000..b2ff43c0d3 --- /dev/null +++ b/gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch @@ -0,0 +1,53 @@ +This patch (adapted from nixpkgs for Build.PL) configures Getopt::Long to pass +options so they will be available at the second GetOptions call. + +Also an option to specify the search path for libfontconfig is added. + +--- GD-2.56/Build.PL 2014-10-27 20:34:54.000000000 -0500 ++++ GD-2.56/Build.PL 2015-02-22 10:08:12.569973657 -0600 +@@ -2,14 +2,14 @@ + + use strict; + use Module::Build; +-use Getopt::Long; ++use Getopt::Long qw(:config pass_through); + use Config; + + # =====> PATHS: CHECK AND ADJUST <===== + my (@INC,@LIBPATH,@LIBS); + my $AUTOCONFIG = 0; # global set by try_to_autoconfigure() below + +-my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path); ++my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path,$lib_fontconfig_path); + + unless (try_to_autoconfigure(\$options,\$lib_gd_path,\@INC,\@LIBPATH,\@LIBS)) { + die <<END; +@@ -38,6 +38,7 @@ + "lib_jpeg_path=s" => \$lib_jpeg_path, + "lib_xpm_path=s" => \$lib_xpm_path, + "lib_zlib_path=s" => \$lib_zlib_path, ++ "lib_fontconfig_path=s" => \$lib_fontconfig_path, + ); + unless ($result) { + die <<END; +@@ -53,6 +54,7 @@ + -lib_jpeg_path path path to libjpeg + -lib_xpm_path path path to libxpm + -lib_zlib_path path path to libpng ++ -lib_fontconfig_path path path to fontconfig + -ignore_missing_gd Ignore missing or old libgd installations and try to compile anyway + + If no options are passed on the command line. The program will +@@ -100,6 +102,12 @@ + @INC = ("-I$lib_zlib_path/include", @INC); + @LIBPATH = ("-L$lib_zlib_path/lib", @LIBPATH); + } ++if( defined($lib_fontconfig_path) ) ++{ ++ print "Fontconfig library used from: $lib_fontconfig_path\n"; ++ @INC = ("-I$lib_fontconfig_path/include", @INC); ++ @LIBPATH = ("-L$lib_fontconfig_path/lib", @LIBPATH); ++} + ############################################################################################# + + if ($^O eq 'VMS'){ diff --git a/gnu/packages/patches/pulseaudio-longer-test-timeout.patch b/gnu/packages/patches/pulseaudio-longer-test-timeout.patch new file mode 100644 index 0000000000..fa81f749d2 --- /dev/null +++ b/gnu/packages/patches/pulseaudio-longer-test-timeout.patch @@ -0,0 +1,13 @@ +Increase the timeout on 'cpu-mix-test' to accommodate slower machines. + +--- pulseaudio-6.0/src/tests/cpu-mix-test.c.ORIG 2015-02-12 09:10:35.000000000 -0500 ++++ pulseaudio-6.0/src/tests/cpu-mix-test.c 2015-03-31 13:45:05.316878322 -0400 +@@ -212,7 +212,7 @@ + #if defined (__arm__) && defined (__linux__) && defined (HAVE_NEON) + tcase_add_test(tc, mix_neon_test); + #endif +- tcase_set_timeout(tc, 120); ++ tcase_set_timeout(tc, 240); + suite_add_tcase(s, tc); + + sr = srunner_create(s); diff --git a/gnu/packages/patches/source-highlight-regexrange-test.patch b/gnu/packages/patches/source-highlight-regexrange-test.patch deleted file mode 100644 index 298c831b35..0000000000 --- a/gnu/packages/patches/source-highlight-regexrange-test.patch +++ /dev/null @@ -1,15 +0,0 @@ -Disable a single check. The failure is discussed at: - - https://savannah.gnu.org/bugs/index.php?41786 - ---- a/lib/tests/test_regexranges_main.cpp 2012-04-14 08:58:25.000000000 -0500 -+++ b/lib/tests/test_regexranges_main.cpp 2014-03-05 23:49:23.520402043 -0600 -@@ -52,7 +52,7 @@ - check_range_regex("simple regex"); - check_range_regex("[[:alpha:]]+"); - // test with a wrong regular expression -- check_range_regex("{notclosed", false); -+ // check_range_regex("{notclosed", false); - - // reset regular expressions - ranges.clear(); diff --git a/gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch b/gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch new file mode 100644 index 0000000000..f5cd0b9a9e --- /dev/null +++ b/gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch @@ -0,0 +1,45 @@ +Fix X server crash when sis driver is used with EXA acceleration. + +Source: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/trusty/xserver-xorg-video-sis/trusty/revision/24/debian/patches/fix-exa-crash.diff + +The patch was originally proposed by nihui: +https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-sis/+bug/1066464/comments/13 + +--- a/src/sis310_accel.c ++++ b/src/sis310_accel.c +@@ -1874,7 +1874,7 @@ + { + ScrnInfoPtr pScrn = xf86ScreenToScrn(pDst->drawable.pScreen); + SISPtr pSiS = SISPTR(pScrn); +- unsigned char *dst = pDst->devPrivate.ptr; ++ unsigned char *dst = ((unsigned char *) pSiS->FbBase) + exaGetPixmapOffset(pDst); + int dst_pitch = exaGetPixmapPitch(pDst); + + (pSiS->SyncAccel)(pScrn); +@@ -1882,7 +1882,7 @@ + if(pDst->drawable.bitsPerPixel < 8) + return FALSE; + +- dst += (x * pDst->drawable.bitsPerPixel / 8) + (y * src_pitch); ++ dst += (x * pDst->drawable.bitsPerPixel / 8) + (y * dst_pitch); + while(h--) { + SiSMemCopyToVideoRam(pSiS, dst, (unsigned char *)src, + (w * pDst->drawable.bitsPerPixel / 8)); +@@ -1953,7 +1953,7 @@ + { + ScrnInfoPtr pScrn = xf86ScreenToScrn(pSrc->drawable.pScreen); + SISPtr pSiS = SISPTR(pScrn); +- unsigned char *src = pSrc->devPrivate.ptr; ++ unsigned char *src = ((unsigned char *) pSiS->FbBase) + exaGetPixmapOffset(pSrc); + int src_pitch = exaGetPixmapPitch(pSrc); + int size = src_pitch < dst_pitch ? src_pitch : dst_pitch; + +@@ -1964,7 +1964,7 @@ + + src += (x * pSrc->drawable.bitsPerPixel / 8) + (y * src_pitch); + while(h--) { +- SiSMemCopyFromVideoRam(pSiS, (unsigned char *)dst, src, size); ++ SiSMemCopyFromVideoRam(pSiS, (unsigned char *)dst, src, (w * pSrc->drawable.bitsPerPixel / 8)); + src += src_pitch; + dst += dst_pitch; + } |