diff options
-rw-r--r-- | debian/changelog | 9 | ||||
-rw-r--r-- | debian/patches/dyson-jsruntime-MemoryManager.patch | 30 | ||||
-rw-r--r-- | debian/patches/dyson-qv4engine-getStackLimit.patch | 25 | ||||
-rw-r--r-- | debian/patches/series | 1 |
4 files changed, 24 insertions, 41 deletions
diff --git a/debian/changelog b/debian/changelog index 84f02d6..28ae5b7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +qtdeclarative-opensource-src (5.3.2-4+dyson1) unstable; urgency=medium + + * Package for Dyson + * Removed debian/patches/dyson-jsruntime-MemoryManager.patch + * Updated debian/patches/dyson-qv4engine-getStackLimit.patch: also check if + stack is "unlimited" + + -- Igor Pashev <pashev.igor@gmail.com> Sun, 01 Mar 2015 18:42:23 +0300 + qtdeclarative-opensource-src (5.3.2-4) unstable; urgency=medium * Remove CMake files for plugins, we don't need to ship them. diff --git a/debian/patches/dyson-jsruntime-MemoryManager.patch b/debian/patches/dyson-jsruntime-MemoryManager.patch deleted file mode 100644 index bde5c3b..0000000 --- a/debian/patches/dyson-jsruntime-MemoryManager.patch +++ /dev/null @@ -1,30 +0,0 @@ -Index: qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4mm.cpp -=================================================================== ---- qtdeclarative-opensource-src-5.2.1.orig/src/qml/jsruntime/qv4mm.cpp 2014-02-02 00:38:02.000000000 +0400 -+++ qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4mm.cpp 2014-04-27 10:02:29.017973776 +0400 -@@ -67,6 +67,11 @@ - #include <sys/storage.h> // __tls() - #endif - -+#if OS(SOLARIS) -+#include <thread.h> -+#include <errno.h> -+#endif -+ - QT_BEGIN_NAMESPACE - - using namespace QV4; -@@ -231,6 +236,13 @@ - # if OS(DARWIN) - void *st = pthread_get_stackaddr_np(pthread_self()); - m_d->stackTop = static_cast<quintptr *>(st); -+# elif OS(SOLARIS) -+ stack_t ss; -+ int rc; -+ do { -+ rc = thr_stksegment(&ss); -+ } while ((rc != 0) && (errno == EAGAIN)); -+ m_d->stackTop = static_cast<quintptr *>(ss.ss_sp); - # else - void* stackBottom = 0; - pthread_attr_t attr; diff --git a/debian/patches/dyson-qv4engine-getStackLimit.patch b/debian/patches/dyson-qv4engine-getStackLimit.patch index 09b6006..6d5019b 100644 --- a/debian/patches/dyson-qv4engine-getStackLimit.patch +++ b/debian/patches/dyson-qv4engine-getStackLimit.patch @@ -1,11 +1,11 @@ -Index: qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4engine.cpp +Index: qtdeclarative/src/qml/jsruntime/qv4engine.cpp =================================================================== ---- qtdeclarative-opensource-src-5.2.1.orig/src/qml/jsruntime/qv4engine.cpp 2014-02-02 00:38:02.000000000 +0400 -+++ qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4engine.cpp 2014-04-27 09:34:20.425260667 +0400 -@@ -77,6 +77,10 @@ - #if USE(PTHREADS) - # include <pthread.h> - # include <sys/resource.h> +--- qtdeclarative.orig/src/qml/jsruntime/qv4engine.cpp ++++ qtdeclarative/src/qml/jsruntime/qv4engine.cpp +@@ -84,6 +84,10 @@ + #if HAVE(PTHREAD_NP_H) + # include <pthread_np.h> + #endif +# if OS(SOLARIS) +# include <thread.h> +# include <errno.h> @@ -13,7 +13,7 @@ Index: qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4engine.cpp #endif QT_BEGIN_NAMESPACE -@@ -106,6 +110,14 @@ +@@ -113,6 +117,19 @@ quintptr getStackLimit() } else size = pthread_get_stacksize_np(thread_self); stackLimit -= size; @@ -23,8 +23,13 @@ Index: qtdeclarative-opensource-src-5.2.1/src/qml/jsruntime/qv4engine.cpp + do { + rc = thr_stksegment(&ss); // can fail only with EAGAIN + } while ((rc != 0) && (errno == EAGAIN)); -+ stackLimit = reinterpret_cast<quintptr>(ss.ss_sp); -+ stackLimit -= ss.ss_size; ++ // Is stack "unlimited" ? ++ if (ss.ss_size == RLIM_INFINITY) { ++ stackLimit = 0xFFFF800000000000L; ++ } else { ++ stackLimit = reinterpret_cast<quintptr>(ss.ss_sp); ++ stackLimit -= ss.ss_size; ++ } # else void* stackBottom = 0; pthread_attr_t attr; diff --git a/debian/patches/series b/debian/patches/series index d4df744..5acf0a7 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,5 +1,4 @@ freebsd_registers.diff dyson-qv4engine-getStackLimit.patch dyson-wtf-MathExtras.patch -dyson-jsruntime-MemoryManager.patch dyson-jsruntime-pow.patch |