diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2013-09-17 17:36:09 +0400 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2013-09-17 17:36:09 +0400 |
commit | 954720f54dd65a5f2100f2e3a193dd3965771c74 (patch) | |
tree | eda9c36f8a39d38a712465e8a1ab315212454f62 | |
parent | 8957ae6b723a2ec47aad8d1acc57ef17244e03f4 (diff) | |
download | qt4-x11-954720f54dd65a5f2100f2e3a193dd3965771c74.tar.gz |
Got a few pkgsrc patches
24 files changed, 901 insertions, 0 deletions
diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MachineStackMarker.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MachineStackMarker.cpp new file mode 100644 index 0000000..84c66e7 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MachineStackMarker.cpp @@ -0,0 +1,92 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MachineStackMarker.cpp,v 1.2 2012/04/09 09:12:49 adam Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/heap/MachineStackMarker.cpp.orig 2012-03-14 14:01:26.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/heap/MachineStackMarker.cpp +@@ -20,6 +20,9 @@ + */ + + #include "config.h" ++#if OS(SOLARIS) ++#undef _FILE_OFFSET_BITS ++#endif + #include "MachineStackMarker.h" + + #include "ConservativeRoots.h" +@@ -64,6 +67,10 @@ + #include <unistd.h> + + #if OS(SOLARIS) ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <fcntl.h> ++#include <procfs.h> + #include <thread.h> + #else + #include <pthread.h> +@@ -341,6 +348,7 @@ typedef pthread_attr_t PlatformThreadReg + #error Need a thread register struct for this platform + #endif + ++#if !OS(SOLARIS) + static size_t getPlatformThreadRegisters(const PlatformThread& platformThread, PlatformThreadRegisters& regs) + { + #if OS(DARWIN) +@@ -391,6 +399,7 @@ static size_t getPlatformThreadRegisters + #error Need a way to get thread registers on this platform + #endif + } ++#endif + + static inline void* otherThreadStackPointer(const PlatformThreadRegisters& regs) + { +@@ -441,6 +450,7 @@ static inline void* otherThreadStackPoin + #endif + } + ++#if !OS(SOLARIS) + static void freePlatformThreadRegisters(PlatformThreadRegisters& regs) + { + #if USE(PTHREADS) && !OS(WINDOWS) && !OS(DARWIN) +@@ -449,24 +459,40 @@ static void freePlatformThreadRegisters( + UNUSED_PARAM(regs); + #endif + } ++#endif + + void MachineThreads::gatherFromOtherThread(ConservativeRoots& conservativeRoots, Thread* thread) + { + suspendThread(thread->platformThread); + ++#if OS(SOLARIS) ++ struct lwpstatus lwp; ++ char procfile[64]; ++ int fd; ++ snprintf(procfile, 64, "/proc/self/lwp/%u/lwpstatus", thread->platformThread); ++ fd = open(procfile, O_RDONLY, 0); ++ if (fd == -1) { ++ fprintf(stderr, "%s: %s\n", procfile, strerror(errno)); ++ abort(); ++ } ++ pread(fd, &lwp, sizeof(lwp), 0); ++ close(fd); ++ void* stackPointer = (void*)lwp.pr_reg[REG_SP]; ++#else + PlatformThreadRegisters regs; + size_t regSize = getPlatformThreadRegisters(thread->platformThread, regs); + + conservativeRoots.add(static_cast<void*>(®s), static_cast<void*>(reinterpret_cast<char*>(®s) + regSize)); + + void* stackPointer = otherThreadStackPointer(regs); ++ ++ freePlatformThreadRegisters(regs); ++#endif + void* stackBase = thread->stackBase; + swapIfBackwards(stackPointer, stackBase); + conservativeRoots.add(stackPointer, stackBase); + + resumeThread(thread->platformThread); +- +- freePlatformThreadRegisters(regs); + } + + #endif diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.cpp new file mode 100644 index 0000000..2c1a07b --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.cpp @@ -0,0 +1,37 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkedSpace.cpp.orig 2013-05-08 14:48:50.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkedSpace.cpp +@@ -124,8 +124,8 @@ void MarkedSpace::sweep() + size_t MarkedSpace::objectCount() const + { + size_t result = 0; +- BlockIterator end = m_blocks.end(); +- for (BlockIterator it = m_blocks.begin(); it != end; ++it) ++ ConstBlockIterator end = m_blocks.end(); ++ for (ConstBlockIterator it = m_blocks.begin(); it != end; ++it) + result += (*it)->markCount(); + return result; + } +@@ -133,8 +133,8 @@ size_t MarkedSpace::objectCount() const + size_t MarkedSpace::size() const + { + size_t result = 0; +- BlockIterator end = m_blocks.end(); +- for (BlockIterator it = m_blocks.begin(); it != end; ++it) ++ ConstBlockIterator end = m_blocks.end(); ++ for (ConstBlockIterator it = m_blocks.begin(); it != end; ++it) + result += (*it)->size(); + return result; + } +@@ -142,8 +142,8 @@ size_t MarkedSpace::size() const + size_t MarkedSpace::capacity() const + { + size_t result = 0; +- BlockIterator end = m_blocks.end(); +- for (BlockIterator it = m_blocks.begin(); it != end; ++it) ++ ConstBlockIterator end = m_blocks.end(); ++ for (ConstBlockIterator it = m_blocks.begin(); it != end; ++it) + result += (*it)->capacity(); + return result; + } diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.h new file mode 100644 index 0000000..7f62c8c --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.h @@ -0,0 +1,12 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.h,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkedSpace.h.orig 2013-05-08 14:49:13.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkedSpace.h +@@ -92,6 +92,7 @@ namespace JSC { + static const size_t impreciseCount = impreciseCutoff / impreciseStep - 1; + + typedef HashSet<MarkedBlock*>::iterator BlockIterator; ++ typedef HashSet<MarkedBlock*>::const_iterator ConstBlockIterator; + + struct SizeClass { + SizeClass(); diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_jit_JITStubs.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_jit_JITStubs.cpp new file mode 100644 index 0000000..06df248 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_jit_JITStubs.cpp @@ -0,0 +1,15 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_jit_JITStubs.cpp,v 1.2 2012/02/16 20:42:46 hans Exp $ + +Fix building on NetBSD/amd64 with GCC. + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/jit/JITStubs.cpp.orig 2012-01-16 06:31:42.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/jit/JITStubs.cpp +@@ -79,7 +79,7 @@ namespace JSC { + #define THUMB_FUNC_PARAM(name) + #endif + +-#if (OS(LINUX) || OS(FREEBSD)) && CPU(X86_64) ++#if (OS(LINUX) || OS(FREEBSD) || OS(NETBSD) || OS(SOLARIS)) && CPU(X86_64) || (OS(SOLARIS) && CPU(X86)) + #define SYMBOL_STRING_RELOCATION(name) #name "@plt" + #elif OS(DARWIN) || (CPU(X86_64) && COMPILER(MINGW) && !GCC_VERSION_AT_LEAST(4, 5, 0)) + #define SYMBOL_STRING_RELOCATION(name) "_" #name diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_parser_JSParser.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_parser_JSParser.cpp new file mode 100644 index 0000000..2961dbe --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_parser_JSParser.cpp @@ -0,0 +1,15 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_parser_JSParser.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/parser/JSParser.cpp.orig 2013-05-08 15:01:59.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/parser/JSParser.cpp +@@ -453,8 +453,8 @@ private: + + void copyCapturedVariablesToVector(const IdentifierSet& capturedVariables, Vector<RefPtr<StringImpl> >& vector) + { +- IdentifierSet::iterator end = capturedVariables.end(); +- for (IdentifierSet::iterator it = capturedVariables.begin(); it != end; ++it) { ++ IdentifierSet::const_iterator end = capturedVariables.end(); ++ for (IdentifierSet::const_iterator it = capturedVariables.begin(); it != end; ++it) { + if (m_declaredVariables.contains(*it)) + continue; + vector.append(*it); diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Atomics.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Atomics.h new file mode 100644 index 0000000..1838f62 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Atomics.h @@ -0,0 +1,41 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Atomics.h,v 1.2 2013/07/07 18:13:56 adam Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h.orig 2013-06-07 05:16:54.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h +@@ -69,6 +69,8 @@ + #include <cutils/atomic.h> + #elif OS(QNX) + #include <atomic.h> ++#elif __cplusplus >= 201103L ++#include <atomic> + #elif COMPILER(GCC) && !OS(SYMBIAN) + #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2)) + #include <ext/atomicity.h> +@@ -106,6 +108,11 @@ inline int atomicDecrement(int volatile* + inline int atomicIncrement(int volatile* addend) { return (int) atomic_add_value((unsigned int volatile*)addend, 1); } + inline int atomicDecrement(int volatile* addend) { return (int) atomic_sub_value((unsigned int volatile*)addend, 1); } + ++#elif __cplusplus >= 201103L ++#define WTF_USE_LOCKFREE_THREADSAFEREFCOUNTED 1 ++inline int atomicIncrement(std::atomic<int> * addend) { return *addend++; } ++inline int atomicDecrement(std::atomic<int> * addend) { return *addend--; } ++ + #elif COMPILER(GCC) && !CPU(SPARC64) && !OS(SYMBIAN) // sizeof(_Atomic_word) != sizeof(int) on sparc64 gcc + #define WTF_USE_LOCKFREE_THREADSAFEREFCOUNTED 1 + +@@ -114,9 +121,15 @@ inline int atomicDecrement(int volatile* + + #endif + ++#if !OS(DARWIN) && __cplusplus >= 201103L ++typedef std::atomic<int> atomic_int; ++#else ++typedef int volatile atomic_int; ++#endif + } // namespace WTF + + #if USE(LOCKFREE_THREADSAFEREFCOUNTED) ++using WTF::atomic_int; + using WTF::atomicDecrement; + using WTF::atomicIncrement; + #endif diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_HashSet.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_HashSet.h new file mode 100644 index 0000000..8ca4bb6 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_HashSet.h @@ -0,0 +1,104 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_HashSet.h,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/HashSet.h.orig 2013-05-08 14:26:07.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/HashSet.h +@@ -49,7 +49,7 @@ namespace WTF { + HashFunctions, ValueTraits, ValueTraits> HashTableType; + + public: +- typedef HashTableConstIteratorAdapter<HashTableType, ValueType> iterator; ++ typedef HashTableIteratorAdapter<HashTableType, ValueType> iterator; + typedef HashTableConstIteratorAdapter<HashTableType, ValueType> const_iterator; + + void swap(HashSet&); +@@ -58,10 +58,14 @@ namespace WTF { + int capacity() const; + bool isEmpty() const; + +- iterator begin() const; +- iterator end() const; ++ iterator begin(); ++ iterator end(); + +- iterator find(const ValueType&) const; ++ const_iterator begin() const; ++ const_iterator end() const; ++ ++ iterator find(const ValueType&); ++ const_iterator find(const ValueType&) const; + bool contains(const ValueType&) const; + + // An alternate version of find() that finds the object by hashing and comparing +@@ -69,7 +73,8 @@ namespace WTF { + // must have the following function members: + // static unsigned hash(const T&); + // static bool equal(const ValueType&, const T&); +- template<typename T, typename HashTranslator> iterator find(const T&) const; ++ template<typename T, typename HashTranslator> iterator find(const T&); ++ template<typename T, typename HashTranslator> const_iterator find(const T&) const; + template<typename T, typename HashTranslator> bool contains(const T&) const; + + // The return value is a pair of an interator to the new value's location, +@@ -134,19 +139,37 @@ namespace WTF { + } + + template<typename T, typename U, typename V> +- inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::begin() const ++ inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::begin() + { + return m_impl.begin(); + } + + template<typename T, typename U, typename V> +- inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::end() const ++ inline typename HashSet<T, U, V>::const_iterator HashSet<T, U, V>::begin() const ++ { ++ return m_impl.begin(); ++ } ++ ++ template<typename T, typename U, typename V> ++ inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::end() + { + return m_impl.end(); + } + + template<typename T, typename U, typename V> +- inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::find(const ValueType& value) const ++ inline typename HashSet<T, U, V>::const_iterator HashSet<T, U, V>::end() const ++ { ++ return m_impl.end(); ++ } ++ ++ template<typename T, typename U, typename V> ++ inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::find(const ValueType& value) ++ { ++ return m_impl.find(value); ++ } ++ ++ template<typename T, typename U, typename V> ++ inline typename HashSet<T, U, V>::const_iterator HashSet<T, U, V>::find(const ValueType& value) const + { + return m_impl.find(value); + } +@@ -160,10 +183,21 @@ namespace WTF { + template<typename Value, typename HashFunctions, typename Traits> + template<typename T, typename HashTranslator> + typename HashSet<Value, HashFunctions, Traits>::iterator ++ inline HashSet<Value, HashFunctions, Traits>::find(const T& value) ++ { ++ typedef HashSetTranslatorAdapter<ValueType, ValueTraits, T, HashTranslator> Adapter; ++ return m_impl.template find<T, Adapter>(value); ++ ++ } ++ ++ template<typename Value, typename HashFunctions, typename Traits> ++ template<typename T, typename HashTranslator> ++ typename HashSet<Value, HashFunctions, Traits>::const_iterator + inline HashSet<Value, HashFunctions, Traits>::find(const T& value) const + { + typedef HashSetTranslatorAdapter<ValueType, ValueTraits, T, HashTranslator> Adapter; + return m_impl.template find<T, Adapter>(value); ++ + } + + template<typename Value, typename HashFunctions, typename Traits> diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_MathExtras.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_MathExtras.h new file mode 100644 index 0000000..8693e68 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_MathExtras.h @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_MathExtras.h,v 1.2 2012/04/09 09:12:49 adam Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/MathExtras.h.orig 2011-12-08 06:06:02.000000000 +0100 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/MathExtras.h 2012-01-15 01:09:37.169459335 +0100 +@@ -252,7 +252,7 @@ inline int clampToInteger(unsigned value + return static_cast<int>(std::min(value, static_cast<unsigned>(std::numeric_limits<int>::max()))); + } + +-#if !COMPILER(MSVC) && !(COMPILER(RVCT) && PLATFORM(BREWMP)) && !OS(SOLARIS) && !OS(SYMBIAN) ++#if !COMPILER(MSVC) && !(COMPILER(RVCT) && PLATFORM(BREWMP)) && !(OS(SOLARIS) && COMPILER(GCC) && (GCC_VERSION < 40600)) && !OS(SYMBIAN) + using std::isfinite; + using std::isinf; + using std::isnan; diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_NullPtr.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_NullPtr.h new file mode 100644 index 0000000..0c035e0 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_NullPtr.h @@ -0,0 +1,20 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_NullPtr.h,v 1.2 2013/07/07 18:13:56 adam Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/NullPtr.h.orig 2013-06-07 05:16:54.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/NullPtr.h +@@ -35,8 +35,14 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBI + #define __has_feature(feature) 0 + #endif + +-#if __has_feature(cxx_nullptr) || (GCC_VERSION_AT_LEAST(4, 6, 0) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && _MSC_VER >= 1600 && !COMPILER(INTEL)) ++#if __has_feature(cxx_nullptr) || (GCC_VERSION_AT_LEAST(4, 6, 0) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && _MSC_VER >= 1600 && !COMPILER(INTEL)) || defined(_LIBCPP_VERSION) + ++#if defined(__clang__) && !defined(_LIBCPP_VERSION) ++namespace std ++{ ++ typedef decltype(nullptr) nullptr_t; ++} ++#endif + #define HAVE_NULLPTR 1 + + #else diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_RefCountedLeakCounter.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_RefCountedLeakCounter.h new file mode 100644 index 0000000..6baaccb --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_RefCountedLeakCounter.h @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_RefCountedLeakCounter.h,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/RefCountedLeakCounter.h.orig 2013-05-08 13:34:56.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/RefCountedLeakCounter.h +@@ -38,7 +38,7 @@ namespace WTF { + + #ifndef NDEBUG + private: +- volatile int m_count; ++ atomic_int m_count; + const char* m_description; + #endif + }; diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_StringImpl.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_StringImpl.h new file mode 100644 index 0000000..8df7c05 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_StringImpl.h @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_StringImpl.h,v 1.1 2012/07/25 11:40:50 fhajny Exp $ + +Fix for GCC 4.7. +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/text/StringImpl.h.orig 2011-12-08 05:06:02.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/text/StringImpl.h +@@ -24,6 +24,7 @@ + #define StringImpl_h + + #include <limits.h> ++#include <unistd.h> + #include <wtf/ASCIICType.h> + #include <wtf/CrossThreadRefCounted.h> + #include <wtf/Forward.h> diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_ThreadSafeRefCounted.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_ThreadSafeRefCounted.h new file mode 100644 index 0000000..962c988 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_ThreadSafeRefCounted.h @@ -0,0 +1,22 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_ThreadSafeRefCounted.h,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/ThreadSafeRefCounted.h.orig 2013-05-08 13:26:56.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/ThreadSafeRefCounted.h +@@ -96,7 +96,7 @@ public: + #if !USE(LOCKFREE_THREADSAFEREFCOUNTED) + MutexLocker locker(m_mutex); + #endif +- return static_cast<int const volatile &>(m_refCount); ++ return m_refCount; + } + + protected: +@@ -126,7 +126,7 @@ private: + template<class T> + friend class CrossThreadRefCounted; + +- int m_refCount; ++ atomic_int m_refCount; + #if !USE(LOCKFREE_THREADSAFEREFCOUNTED) + mutable Mutex m_mutex; + #endif diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Threading.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Threading.h new file mode 100644 index 0000000..a3396c8 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Threading.h @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Threading.h,v 1.2 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Threading.h.orig 2012-11-23 10:10:05.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Threading.h +@@ -113,6 +113,8 @@ using WTF::createThread; + using WTF::currentThread; + using WTF::detachThread; + using WTF::waitForThreadCompletion; ++#if !OS(SOLARIS) + using WTF::yield; ++#endif + + #endif // Threading_h diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_dom_Element.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_dom_Element.cpp new file mode 100644 index 0000000..3d0a601 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_dom_Element.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_dom_Element.cpp,v 1.1 2013/08/29 13:00:41 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/WebCore/dom/Element.cpp.orig 2013-07-12 11:02:45.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/dom/Element.cpp +@@ -1080,7 +1080,7 @@ void Element::recalcStyle(StyleChange ch + { + // Ref currentStyle in case it would otherwise be deleted when setRenderStyle() is called. + RefPtr<RenderStyle> currentStyle(renderStyle()); +- bool hasParentStyle = parentNodeForRenderingAndStyle() ? parentNodeForRenderingAndStyle()->renderStyle() : false; ++ bool hasParentStyle = parentNodeForRenderingAndStyle() ? parentNodeForRenderingAndStyle()->renderStyle() != NULL : false; + bool hasDirectAdjacentRules = currentStyle && currentStyle->childrenAffectedByDirectAdjacentRules(); + bool hasIndirectAdjacentRules = currentStyle && currentStyle->childrenAffectedByForwardPositionalRules(); + diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_features.pri b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_features.pri new file mode 100644 index 0000000..e90baeb --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_features.pri @@ -0,0 +1,17 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_features.pri,v 1.1 2012/01/12 22:59:58 adam Exp $ + +Mac OS X: Problem linking with QTKit enabled. + +--- a/src/3rdparty/webkit/Source/WebCore/features.pri.orig 2012-01-08 11:13:53.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/features.pri +@@ -165,8 +165,8 @@ symbian|maemo5|maemo6 { + mac:!contains(DEFINES, USE_QTMULTIMEDIA=1) { + DEFINES -= ENABLE_VIDEO=0 + DEFINES += ENABLE_VIDEO=1 +- DEFINES += WTF_USE_QTKIT=1 +- DEFINES -= WTF_USE_QTKIT=0 ++ DEFINES -= WTF_USE_QTKIT=1 ++ DEFINES += WTF_USE_QTKIT=0 + } else: linux-*:!contains(DEFINES, USE_QTMULTIMEDIA=1) { + !contains(QT_CONFIG, no-pkg-config):system(pkg-config --exists glib-2.0 gio-2.0 gstreamer-0.10): { + DEFINES -= ENABLE_VIDEO=0 diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_DefaultLocalizationStrategy.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_DefaultLocalizationStrategy.cpp new file mode 100644 index 0000000..30bdf24 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_DefaultLocalizationStrategy.cpp @@ -0,0 +1,18 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_DefaultLocalizationStrategy.cpp,v 1.2 2012/02/26 22:16:16 adam Exp $ + +Fix C++ error. + +--- a/src/3rdparty/webkit/Source/WebCore/platform/DefaultLocalizationStrategy.cpp.orig 2012-01-12 19:51:48.000000000 +0100 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/DefaultLocalizationStrategy.cpp 2012-01-12 20:07:06.000000000 +0100 +@@ -59,7 +59,11 @@ + return result.get(); + #elif PLATFORM(QT) + va_list arguments; ++#ifdef __clang__ ++ va_start(arguments, format.charactersWithNullTermination()); ++#else + va_start(arguments, format); ++#endif + QString result; + result.vsprintf(format.latin1().data(), arguments); + va_end(arguments); diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.cpp new file mode 100644 index 0000000..dd9da09 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.cpp @@ -0,0 +1,248 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +Upstream changeset 92556 + +--- a/src/3rdparty/webkit/Source/WebCore/platform/Timer.cpp.orig 2012-11-23 10:09:58.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/Timer.cpp +@@ -41,6 +41,8 @@ using namespace std; + + namespace WebCore { + ++class TimerHeapReference; ++ + // Timers are stored in a heap data structure, used to implement a priority queue. + // This allows us to efficiently determine which timer needs to fire the soonest. + // Then we set a single shared system timer to fire at that time. +@@ -53,110 +55,138 @@ static Vector<TimerBase*>& timerHeap() + return threadGlobalData().threadTimers().timerHeap(); + } + +-// Class to represent elements in the heap when calling the standard library heap algorithms. +-// Maintains the m_heapIndex value in the timers themselves, which allows us to do efficient +-// modification of the heap. +-class TimerHeapElement { +-public: +- explicit TimerHeapElement(int i) +- : m_index(i) +- , m_timer(timerHeap()[m_index]) +- { +- checkConsistency(); +- } +- +- TimerHeapElement(const TimerHeapElement&); +- TimerHeapElement& operator=(const TimerHeapElement&); +- +- TimerBase* timer() const { return m_timer; } +- +- void checkConsistency() const +- { +- ASSERT(m_index >= 0); +- ASSERT(m_index < static_cast<int>(timerHeap().size())); +- } ++// ---------------- + ++class TimerHeapPointer { ++public: ++ TimerHeapPointer(TimerBase** pointer) : m_pointer(pointer) { } ++ TimerHeapReference operator*() const; ++ TimerBase* operator->() const { return *m_pointer; } + private: +- TimerHeapElement(); ++ TimerBase** m_pointer; ++}; + +- int m_index; +- TimerBase* m_timer; ++class TimerHeapReference { ++public: ++ TimerHeapReference(TimerBase*& reference) : m_reference(reference) { } ++ operator TimerBase*() const { return m_reference; } ++ TimerHeapPointer operator&() const { return &m_reference; } ++ TimerHeapReference& operator=(TimerBase*); ++ TimerHeapReference& operator=(TimerHeapReference); ++private: ++ TimerBase*& m_reference; + }; + +-inline TimerHeapElement::TimerHeapElement(const TimerHeapElement& o) +- : m_index(-1), m_timer(o.timer()) ++inline TimerHeapReference TimerHeapPointer::operator*() const + { ++ return *m_pointer; + } + +-inline TimerHeapElement& TimerHeapElement::operator=(const TimerHeapElement& o) ++inline TimerHeapReference& TimerHeapReference::operator=(TimerBase* timer) + { +- TimerBase* t = o.timer(); +- m_timer = t; +- if (m_index != -1) { +- checkConsistency(); +- timerHeap()[m_index] = t; +- t->m_heapIndex = m_index; +- } ++ m_reference = timer; ++ Vector<TimerBase*>& heap = timerHeap(); ++ if (&m_reference >= heap.data() && &m_reference < heap.data() + heap.size()) ++ timer->m_heapIndex = &m_reference - heap.data(); + return *this; + } + +-inline bool operator<(const TimerHeapElement& a, const TimerHeapElement& b) ++inline TimerHeapReference& TimerHeapReference::operator=(TimerHeapReference b) + { +- // The comparisons below are "backwards" because the heap puts the largest +- // element first and we want the lowest time to be the first one in the heap. +- double aFireTime = a.timer()->m_nextFireTime; +- double bFireTime = b.timer()->m_nextFireTime; +- if (bFireTime != aFireTime) +- return bFireTime < aFireTime; +- +- // We need to look at the difference of the insertion orders instead of comparing the two +- // outright in case of overflow. +- unsigned difference = a.timer()->m_heapInsertionOrder - b.timer()->m_heapInsertionOrder; +- return difference < UINT_MAX / 2; ++ TimerBase* timer = b; ++ return *this = timer; ++} ++ ++inline void swap(TimerHeapReference a, TimerHeapReference b) ++{ ++ TimerBase* timerA = a; ++ TimerBase* timerB = b; ++ ++ // Invoke the assignment operator, since that takes care of updating m_heapIndex. ++ a = timerB; ++ b = timerA; + } + + // ---------------- + + // Class to represent iterators in the heap when calling the standard library heap algorithms. +-// Returns TimerHeapElement for elements in the heap rather than the TimerBase pointers themselves. +-class TimerHeapIterator : public iterator<random_access_iterator_tag, TimerHeapElement, int> { ++// Uses a custom pointer and reference type that update indices for pointers in the heap. ++class TimerHeapIterator : public iterator<random_access_iterator_tag, TimerBase*, ptrdiff_t, TimerHeapPointer, TimerHeapReference> { + public: +- TimerHeapIterator() : m_index(-1) { } +- TimerHeapIterator(int i) : m_index(i) { checkConsistency(); } +- +- TimerHeapIterator& operator++() { checkConsistency(); ++m_index; checkConsistency(); return *this; } +- TimerHeapIterator operator++(int) { checkConsistency(); checkConsistency(1); return m_index++; } ++ explicit TimerHeapIterator(TimerBase** pointer) : m_pointer(pointer) { checkConsistency(); } + +- TimerHeapIterator& operator--() { checkConsistency(); --m_index; checkConsistency(); return *this; } +- TimerHeapIterator operator--(int) { checkConsistency(); checkConsistency(-1); return m_index--; } ++ TimerHeapIterator& operator++() { checkConsistency(); ++m_pointer; checkConsistency(); return *this; } ++ TimerHeapIterator operator++(int) { checkConsistency(1); return TimerHeapIterator(m_pointer++); } + +- TimerHeapIterator& operator+=(int i) { checkConsistency(); m_index += i; checkConsistency(); return *this; } +- TimerHeapIterator& operator-=(int i) { checkConsistency(); m_index -= i; checkConsistency(); return *this; } ++ TimerHeapIterator& operator--() { checkConsistency(); --m_pointer; checkConsistency(); return *this; } ++ TimerHeapIterator operator--(int) { checkConsistency(-1); return TimerHeapIterator(m_pointer--); } + +- TimerHeapElement operator*() const { return TimerHeapElement(m_index); } +- TimerHeapElement operator[](int i) const { return TimerHeapElement(m_index + i); } ++ TimerHeapIterator& operator+=(ptrdiff_t i) { checkConsistency(); m_pointer += i; checkConsistency(); return *this; } ++ TimerHeapIterator& operator-=(ptrdiff_t i) { checkConsistency(); m_pointer -= i; checkConsistency(); return *this; } + +- int index() const { return m_index; } ++ TimerHeapReference operator*() const { return TimerHeapReference(*m_pointer); } ++ TimerHeapReference operator[](ptrdiff_t i) const { return TimerHeapReference(m_pointer[i]); } ++ TimerBase* operator->() const { return *m_pointer; } + +- void checkConsistency(int offset = 0) const ++private: ++ void checkConsistency(ptrdiff_t offset = 0) const + { +- ASSERT_UNUSED(offset, m_index + offset >= 0); +- ASSERT_UNUSED(offset, m_index + offset <= static_cast<int>(timerHeap().size())); ++ ASSERT(m_pointer >= timerHeap().data()); ++ ASSERT(m_pointer <= timerHeap().data() + timerHeap().size()); ++ ASSERT_UNUSED(offset, m_pointer + offset >= timerHeap().data()); ++ ASSERT_UNUSED(offset, m_pointer + offset <= timerHeap().data() + timerHeap().size()); + } + +-private: +- int m_index; ++ friend bool operator==(TimerHeapIterator, TimerHeapIterator); ++ friend bool operator!=(TimerHeapIterator, TimerHeapIterator); ++ friend bool operator<(TimerHeapIterator, TimerHeapIterator); ++ friend bool operator>(TimerHeapIterator, TimerHeapIterator); ++ friend bool operator<=(TimerHeapIterator, TimerHeapIterator); ++ friend bool operator>=(TimerHeapIterator, TimerHeapIterator); ++ ++ friend TimerHeapIterator operator+(TimerHeapIterator, size_t); ++ friend TimerHeapIterator operator+(size_t, TimerHeapIterator); ++ ++ friend TimerHeapIterator operator-(TimerHeapIterator, size_t); ++ friend ptrdiff_t operator-(TimerHeapIterator, TimerHeapIterator); ++ ++ TimerBase** m_pointer; + }; + +-inline bool operator==(TimerHeapIterator a, TimerHeapIterator b) { return a.index() == b.index(); } +-inline bool operator!=(TimerHeapIterator a, TimerHeapIterator b) { return a.index() != b.index(); } +-inline bool operator<(TimerHeapIterator a, TimerHeapIterator b) { return a.index() < b.index(); } ++inline bool operator==(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer == b.m_pointer; } ++inline bool operator!=(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer != b.m_pointer; } ++inline bool operator<(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer < b.m_pointer; } ++inline bool operator>(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer > b.m_pointer; } ++inline bool operator<=(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer <= b.m_pointer; } ++inline bool operator>=(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer >= b.m_pointer; } ++ ++inline TimerHeapIterator operator+(TimerHeapIterator a, size_t b) { return TimerHeapIterator(a.m_pointer + b); } ++inline TimerHeapIterator operator+(size_t a, TimerHeapIterator b) { return TimerHeapIterator(a + b.m_pointer); } + +-inline TimerHeapIterator operator+(TimerHeapIterator a, int b) { return a.index() + b; } +-inline TimerHeapIterator operator+(int a, TimerHeapIterator b) { return a + b.index(); } ++inline TimerHeapIterator operator-(TimerHeapIterator a, size_t b) { return TimerHeapIterator(a.m_pointer - b); } ++inline ptrdiff_t operator-(TimerHeapIterator a, TimerHeapIterator b) { return a.m_pointer - b.m_pointer; } + +-inline TimerHeapIterator operator-(TimerHeapIterator a, int b) { return a.index() - b; } +-inline int operator-(TimerHeapIterator a, TimerHeapIterator b) { return a.index() - b.index(); } ++// ---------------- ++ ++class TimerHeapLessThanFunction { ++public: ++ bool operator()(TimerBase*, TimerBase*) const; ++}; ++ ++inline bool TimerHeapLessThanFunction::operator()(TimerBase* a, TimerBase* b) const ++{ ++ // The comparisons below are "backwards" because the heap puts the largest ++ // element first and we want the lowest time to be the first one in the heap. ++ double aFireTime = a->m_nextFireTime; ++ double bFireTime = b->m_nextFireTime; ++ if (bFireTime != aFireTime) ++ return bFireTime < aFireTime; ++ ++ // We need to look at the difference of the insertion orders instead of comparing the two ++ // outright in case of overflow. ++ unsigned difference = a->m_heapInsertionOrder - b->m_heapInsertionOrder; ++ return difference < numeric_limits<unsigned>::max() / 2; ++} + + // ---------------- + +@@ -225,7 +255,8 @@ void TimerBase::heapDecreaseKey() + { + ASSERT(m_nextFireTime != 0); + checkHeapIndex(); +- push_heap(TimerHeapIterator(0), TimerHeapIterator(m_heapIndex + 1)); ++ TimerBase** heapData = timerHeap().data(); ++ push_heap(TimerHeapIterator(heapData), TimerHeapIterator(heapData + m_heapIndex + 1), TimerHeapLessThanFunction()); + checkHeapIndex(); + } + +@@ -274,7 +305,9 @@ void TimerBase::heapPopMin() + { + ASSERT(this == timerHeap().first()); + checkHeapIndex(); +- pop_heap(TimerHeapIterator(0), TimerHeapIterator(timerHeap().size())); ++ Vector<TimerBase*>& heap = timerHeap(); ++ TimerBase** heapData = heap.data(); ++ pop_heap(TimerHeapIterator(heapData), TimerHeapIterator(heapData + heap.size()), TimerHeapLessThanFunction()); + checkHeapIndex(); + ASSERT(this == timerHeap().last()); + } diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.h b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.h new file mode 100644 index 0000000..f1b1dbb --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.h @@ -0,0 +1,18 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.h,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +Upstream changeset 92556 + +--- a/src/3rdparty/webkit/Source/WebCore/platform/Timer.h.orig 2012-11-23 10:09:58.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/Timer.h +@@ -84,9 +84,9 @@ private: + ThreadIdentifier m_thread; + #endif + +- friend class TimerHeapElement; + friend class ThreadTimers; +- friend bool operator<(const TimerHeapElement&, const TimerHeapElement&); ++ friend class TimerHeapLessThanFunction; ++ friend class TimerHeapReference; + }; + + template <typename TimerFiredClass> class Timer : public TimerBase { diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_graphics_MediaPlayer.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_graphics_MediaPlayer.cpp new file mode 100644 index 0000000..49733e3 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_graphics_MediaPlayer.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_graphics_MediaPlayer.cpp,v 1.1 2012/01/12 22:59:58 adam Exp $ + +--- a/src/3rdparty/webkit/Source/WebCore/platform/graphics/MediaPlayer.cpp.orig 2012-01-08 12:03:43.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/graphics/MediaPlayer.cpp +@@ -192,9 +192,6 @@ static Vector<MediaPlayerFactory*>& inst + MediaPlayerPrivateAVFoundationObjC::registerMediaEngine(addMediaEngine); + #endif + +-#if !PLATFORM(GTK) && !PLATFORM(EFL) && !(PLATFORM(QT) && USE(GSTREAMER)) +- PlatformMediaEngineClassName::registerMediaEngine(addMediaEngine); +-#endif + } + + return installedEngines; diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_network_qt_QNetworkReplyHandler.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_network_qt_QNetworkReplyHandler.cpp new file mode 100644 index 0000000..d800d42 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_network_qt_QNetworkReplyHandler.cpp @@ -0,0 +1,73 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_network_qt_QNetworkReplyHandler.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp.orig 2013-05-03 13:04:45.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp +@@ -235,7 +235,7 @@ QNetworkReply* QNetworkReplyWrapper::rel + resetConnections(); + QNetworkReply* reply = m_reply; + m_reply = 0; +- m_sniffer = 0; ++ m_sniffer = nullptr; + + reply->setParent(0); + return reply; +@@ -300,7 +300,7 @@ void QNetworkReplyWrapper::receiveSniffe + Q_ASSERT(m_sniffer); + + m_sniffedMIMEType = m_sniffer->mimeType(); +- m_sniffer = 0; ++ m_sniffer = nullptr; + + emitMetaDataChanged(); + } +@@ -417,7 +417,7 @@ QNetworkReply* QNetworkReplyHandler::rel + return 0; + + QNetworkReply* reply = m_replyWrapper->release(); +- m_replyWrapper = 0; ++ m_replyWrapper = nullptr; + return reply; + } + +@@ -440,12 +440,12 @@ void QNetworkReplyHandler::finish() + + ResourceHandleClient* client = m_resourceHandle->client(); + if (!client) { +- m_replyWrapper = 0; ++ m_replyWrapper = nullptr; + return; + } + + if (m_replyWrapper->wasRedirected()) { +- m_replyWrapper = 0; ++ m_replyWrapper = nullptr; + m_queue.push(&QNetworkReplyHandler::start); + return; + } +@@ -465,7 +465,7 @@ void QNetworkReplyHandler::finish() + } + } + +- m_replyWrapper = 0; ++ m_replyWrapper = nullptr; + } + + void QNetworkReplyHandler::sendResponseIfNeeded() +@@ -539,7 +539,7 @@ void QNetworkReplyHandler::redirect(Reso + newUrl.toString(), + QCoreApplication::translate("QWebPage", "Redirection limit reached")); + client->didFail(m_resourceHandle, error); +- m_replyWrapper = 0; ++ m_replyWrapper = nullptr; + return; + } + +@@ -666,7 +666,7 @@ void QNetworkReplyHandler::start() + if (!reply) + return; + +- m_replyWrapper = new QNetworkReplyWrapper(&m_queue, reply, m_resourceHandle->shouldContentSniff() && d->m_context->mimeSniffingEnabled(), this); ++ m_replyWrapper = adoptPtr(new QNetworkReplyWrapper(&m_queue, reply, m_resourceHandle->shouldContentSniff() && d->m_context->mimeSniffingEnabled(), this)); + + if (m_loadType == SynchronousLoad) { + m_replyWrapper->synchronousLoad(); diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_qt_PlatformKeyboardEventQt.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_qt_PlatformKeyboardEventQt.cpp new file mode 100644 index 0000000..aebd19d --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_qt_PlatformKeyboardEventQt.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebCore_platform_qt_PlatformKeyboardEventQt.cpp,v 1.1 2012/11/19 10:52:23 ryoon Exp $ + +--- a/src/3rdparty/webkit/Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp.orig 2012-09-11 01:36:47.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebCore/platform/qt/PlatformKeyboardEventQt.cpp +@@ -133,7 +133,7 @@ String keyIdentifierForQtKeyCode(int key + case Qt::Key_Backtab: + return "U+0009"; + default: +- return String::format("U+%04X", toupper(keyCode)); ++ return String::format("U+%04X", toupper((unsigned char)keyCode)); + } + } + diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_Api_qgraphicswebview.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_Api_qgraphicswebview.cpp new file mode 100644 index 0000000..c66e8c8 --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_Api_qgraphicswebview.cpp @@ -0,0 +1,22 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebKit_qt_Api_qgraphicswebview.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp.orig 2013-05-03 13:55:03.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp +@@ -471,7 +471,7 @@ void QGraphicsWebViewPrivate::detachCurr + return; + + page->d->view.clear(); +- page->d->client = 0; ++ page->d->client = nullptr; + + // if the page was created by us, we own it and need to + // destroy it as well. +@@ -504,7 +504,7 @@ void QGraphicsWebView::setPage(QWebPage* + if (!d->page) + return; + +- d->page->d->client = new PageClientQGraphicsWidget(this, page); // set the page client ++ d->page->d->client = adoptPtr(new PageClientQGraphicsWidget(this, page)); // set the page client + + if (d->overlay()) + d->overlay()->prepareGraphicsItemGeometryChange(); diff --git a/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_WebCoreSupport_NotificationPresenterClientQt.cpp b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_WebCoreSupport_NotificationPresenterClientQt.cpp new file mode 100644 index 0000000..3e5cabb --- /dev/null +++ b/debian/patches/pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_WebCoreSupport_NotificationPresenterClientQt.cpp @@ -0,0 +1,28 @@ +$NetBSD: patch-src_3rdparty_webkit_Source_WebKit_qt_WebCoreSupport_NotificationPresenterClientQt.cpp,v 1.1 2013/05/09 14:07:08 joerg Exp $ + +--- a/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp.orig 2013-05-03 13:43:43.000000000 +0000 ++++ b/src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp +@@ -73,9 +73,9 @@ NotificationWrapper::NotificationWrapper + #if ENABLE(NOTIFICATIONS) + + #ifndef QT_NO_SYSTEMTRAYICON +- m_notificationIcon = 0; ++ m_notificationIcon = nullptr; + #endif +- m_presenter = 0; ++ m_presenter = nullptr; + #endif + } + +@@ -211,9 +211,9 @@ void NotificationPresenterClientQt::disp + QPixmap pixmap; + if (bytes.length() && pixmap.loadFromData(bytes)) { + QIcon icon(pixmap); +- wrapper->m_notificationIcon = new QSystemTrayIcon(icon); ++ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon(icon)); + } else +- wrapper->m_notificationIcon = new QSystemTrayIcon(); ++ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon()); + #endif + } + diff --git a/debian/patches/series b/debian/patches/series index c3c31f5..987c560 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -42,3 +42,30 @@ add_missing_method_for_QBasicAtomicPointer_on_s390.patch no_libicu_message.diff QTBUG-25324_assistant_segfault_on_start_with_gcc_4.7.patch dyson-UNAME_MACHINE.patch + +# PKGSRC patches +# See https://github.com/jsonn/pkgsrc +# Changed path depth from 0 to 1 (-p0 -> -p1) +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MachineStackMarker.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_heap_MarkedSpace.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_jit_JITStubs.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_parser_JSParser.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Atomics.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_HashSet.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_MathExtras.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_NullPtr.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_RefCountedLeakCounter.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_StringImpl.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_ThreadSafeRefCounted.h +pkgsrc/patch-src_3rdparty_webkit_Source_JavaScriptCore_wtf_Threading.h +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_dom_Element.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_features.pri +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_DefaultLocalizationStrategy.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_Timer.h +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_graphics_MediaPlayer.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_network_qt_QNetworkReplyHandler.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebCore_platform_qt_PlatformKeyboardEventQt.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_Api_qgraphicswebview.cpp +pkgsrc/patch-src_3rdparty_webkit_Source_WebKit_qt_WebCoreSupport_NotificationPresenterClientQt.cpp |