javaruntimes/starterutils/src.s60/j9starters60.cpp
branchRCL_3
changeset 60 6c158198356e
parent 24 0fd27995241b
child 77 7cee158cb8cd
--- a/javaruntimes/starterutils/src.s60/j9starters60.cpp	Thu Jul 15 18:31:06 2010 +0300
+++ b/javaruntimes/starterutils/src.s60/j9starters60.cpp	Thu Aug 19 09:48:13 2010 +0300
@@ -129,8 +129,15 @@
     mJvmArgs.push_back(L"-Xmine16K"); // Minimum size for heap expansion.
     mJvmArgs.push_back(L"-Xmns64K");  // Initial new space size. Keep this in sync with MemoryLogger.java
     mJvmArgs.push_back(L"-Xmos64K");  // Initial old space size. Keep this in sync with MemoryLogger.java
+
+#ifdef __WINSCW__
     mJvmArgs.push_back(L"-Xmox16M");  // Maximum old space size.
     mJvmArgs.push_back(L"-Xmx16M");   // Memory maximum.
+#else // __WINSCW__
+    mJvmArgs.push_back(L"-Xmox64M");  // Maximum old space size.
+    mJvmArgs.push_back(L"-Xmx64M");   // Memory maximum.
+#endif  // __WINSCW__
+
     mJvmArgs.push_back(L"-Xmco16k");  // ROM class segment increment.
     mJvmArgs.push_back(L"-Xmr1k");    // Remembered set size.
 
@@ -165,6 +172,24 @@
     mJvmArgs.push_back(oldSpace);
 }
 
+
+void J9StarterS60::overrideMaxHeapSize(int heapSize)
+{
+    JELOG2(EJavaRuntime);
+    std::wstring heapAsString(JavaCommonUtils::intToWstring(heapSize));
+    doOverideHeap(L"-Xmox", heapAsString);
+    doOverideHeap(L"-Xmx", heapAsString);
+}
+
+void J9StarterS60::doOverideHeap(const std::wstring& arg, const std::wstring& size)
+{
+    JELOG2(EJavaRuntime);
+	std::wstring maxHeapArg(arg);
+    maxHeapArg += size;
+    maxHeapArg += L"K";
+    mJvmArgs.push_back(maxHeapArg);
+}
+
 void J9StarterS60::overrideNewHeapSize(int heapSize)
 {
     JELOG2(EJavaRuntime);
@@ -205,6 +230,10 @@
     {
         pathType = BOOT_CLASSPATH_TCKRUNNER;
     }
+    else if (mIdentifier == L"JavaControlPanel")
+    {
+        pathType = BOOT_CLASSPATH_JAVACONTROLPANEL;
+    }
 
     std::list<std::wstring> odcFiles;
     std::list<std::wstring> bcpEntities;