summaryrefslogtreecommitdiffstats
path: root/src/s60main
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-10-01 09:31:49 +0200
committerQt Continuous Integration System <qt-info@nokia.com>2010-10-01 09:31:49 +0200
commit33b76a659b2f44fa7038e375bbfb4cfd449ae617 (patch)
tree4bf3f547b92dc54e45ef87a5c5421cd0c483f1dd /src/s60main
parent0492f2249395ed4f8d86775aee18ffeb195b30b4 (diff)
parent904a8f5a079243a9718898f8ae3f07c6f4e73800 (diff)
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: (23 commits) hybrid heap improvement in the disabling of BTrace Further hybrid heap review changes hybrid heap further review changes lower case name for allocator support header hybrid allocator integration review updates hybrid allocator tuning removing need for u32std.h in s60main declaring fast allocation shrink hysteresis value fast allocator compiling for S60 3.2 moved fast allocator config to qt_hybridHeap_symbian_p.h getting fast allocator to compile on S60 5.0 SDK removing header use not in public SDKs added header to arch.pri added renamed header new allocator tidy up and winscw freeze Qt apps to use the Symbian^4 fast allocator in pre-Symbian^4 platforms Enable call stack tracing of allocs, for memory leak debugging Fix BTRACE logging Implement RNewAllocator::Available for Doug Lea section Fill in some of the missing functions ...
Diffstat (limited to 'src/s60main')
-rw-r--r--src/s60main/newallocator_hook.cpp58
-rw-r--r--src/s60main/s60main.pro3
2 files changed, 60 insertions, 1 deletions
diff --git a/src/s60main/newallocator_hook.cpp b/src/s60main/newallocator_hook.cpp
new file mode 100644
index 0000000000..9cc6afb728
--- /dev/null
+++ b/src/s60main/newallocator_hook.cpp
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the Symbian application wrapper of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <e32std.h>
+#include <qglobal.h>
+
+struct SStdEpocThreadCreateInfo;
+
+Q_CORE_EXPORT TInt qt_symbian_SetupThreadHeap(TBool aNotFirst, SStdEpocThreadCreateInfo& aInfo);
+
+
+/* \internal
+ *
+ * Uses link-time symbol preemption to capture a call from the application
+ * startup. On return, there is some kind of heap allocator installed on the
+ * thread.
+*/
+TInt UserHeap::SetupThreadHeap(TBool aNotFirst, SStdEpocThreadCreateInfo& aInfo)
+{
+ return qt_symbian_SetupThreadHeap(aNotFirst, aInfo);
+}
diff --git a/src/s60main/s60main.pro b/src/s60main/s60main.pro
index a273897187..664f155f7d 100644
--- a/src/s60main/s60main.pro
+++ b/src/s60main/s60main.pro
@@ -14,7 +14,8 @@ symbian {
CONFIG -= jpeg
INCLUDEPATH += tmp $$QMAKE_INCDIR_QT/QtCore $$MW_LAYER_SYSTEMINCLUDE
SOURCES = qts60main.cpp \
- qts60main_mcrt0.cpp
+ qts60main_mcrt0.cpp \
+ newallocator_hook.cpp
# s60main needs to be built in ARM mode for GCCE to work.
CONFIG += do_not_build_as_thumb