Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b60bc0ec authored by Sebastien Hertz's avatar Sebastien Hertz
Browse files

resolved conflicts for merge of a2d19318 to lmp-mr1-ub-dev

Change-Id: I4cb38241b5efab1eb7af161e1589fa477a473a39
parents 504623e1 a2d19318
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -307,9 +307,9 @@ int main(int argc, char* const argv[])
    }
    }


    if (zygote) {
    if (zygote) {
        runtime.start("com.android.internal.os.ZygoteInit", args);
        runtime.start("com.android.internal.os.ZygoteInit", args, zygote);
    } else if (className) {
    } else if (className) {
        runtime.start("com.android.internal.os.RuntimeInit", args);
        runtime.start("com.android.internal.os.RuntimeInit", args, zygote);
    } else {
    } else {
        fprintf(stderr, "Error: no class name or --zygote supplied.\n");
        fprintf(stderr, "Error: no class name or --zygote supplied.\n");
        app_usage();
        app_usage();
+10 −6
Original line number Original line Diff line number Diff line
@@ -534,7 +534,7 @@ bool AndroidRuntime::parseCompilerRuntimeOption(const char* property,
 *
 *
 * Returns 0 on success.
 * Returns 0 on success.
 */
 */
int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv)
int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote)
{
{
    JavaVMInitArgs initArgs;
    JavaVMInitArgs initArgs;
    char propBuf[PROPERTY_VALUE_MAX];
    char propBuf[PROPERTY_VALUE_MAX];
@@ -667,9 +667,13 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv)
    parseRuntimeOption("dalvik.vm.gctype", gctypeOptsBuf, "-Xgc:");
    parseRuntimeOption("dalvik.vm.gctype", gctypeOptsBuf, "-Xgc:");
    parseRuntimeOption("dalvik.vm.backgroundgctype", backgroundgcOptsBuf, "-XX:BackgroundGC=");
    parseRuntimeOption("dalvik.vm.backgroundgctype", backgroundgcOptsBuf, "-XX:BackgroundGC=");


    /* enable debugging; set suspend=y to pause during VM init */
    /*
    /* use android ADB transport */
     * Enable debugging only for apps forked from zygote.
     * Set suspend=y to pause during VM init and use android ADB transport.
     */
    if (zygote) {
      addOption("-agentlib:jdwp=transport=dt_android_adb,suspend=n,server=y");
      addOption("-agentlib:jdwp=transport=dt_android_adb,suspend=n,server=y");
    }


    parseRuntimeOption("dalvik.vm.lockprof.threshold",
    parseRuntimeOption("dalvik.vm.lockprof.threshold",
                       lockProfThresholdBuf,
                       lockProfThresholdBuf,
@@ -926,7 +930,7 @@ jstring AndroidRuntime::NewStringLatin1(JNIEnv* env, const char* bytes) {
 * Passes the main function two arguments, the class name and the specified
 * Passes the main function two arguments, the class name and the specified
 * options string.
 * options string.
 */
 */
void AndroidRuntime::start(const char* className, const Vector<String8>& options)
void AndroidRuntime::start(const char* className, const Vector<String8>& options, bool zygote)
{
{
    ALOGD(">>>>>> START %s uid %d <<<<<<\n",
    ALOGD(">>>>>> START %s uid %d <<<<<<\n",
            className != NULL ? className : "(unknown)", getuid());
            className != NULL ? className : "(unknown)", getuid());
@@ -962,7 +966,7 @@ void AndroidRuntime::start(const char* className, const Vector<String8>& options
    JniInvocation jni_invocation;
    JniInvocation jni_invocation;
    jni_invocation.Init(NULL);
    jni_invocation.Init(NULL);
    JNIEnv* env;
    JNIEnv* env;
    if (startVm(&mJavaVM, &env) != 0) {
    if (startVm(&mJavaVM, &env, zygote) != 0) {
        return;
        return;
    }
    }
    onVmCreated(env);
    onVmCreated(env);
+2 −2
Original line number Original line Diff line number Diff line
@@ -64,7 +64,7 @@ public:
     */
     */
    static jclass findClass(JNIEnv* env, const char* className);
    static jclass findClass(JNIEnv* env, const char* className);


    void start(const char *classname, const Vector<String8>& options);
    void start(const char *classname, const Vector<String8>& options, bool zygote);


    void exit(int code);
    void exit(int code);


@@ -131,7 +131,7 @@ private:
                                    const char* runtimeArg,
                                    const char* runtimeArg,
                                    const char* quotingArg);
                                    const char* quotingArg);
    void parseExtraOpts(char* extraOptsBuf, const char* quotingArg);
    void parseExtraOpts(char* extraOptsBuf, const char* quotingArg);
    int startVm(JavaVM** pJavaVM, JNIEnv** pEnv);
    int startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote);


    Vector<JavaVMOption> mOptions;
    Vector<JavaVMOption> mOptions;
    bool mExitWithoutCleanup;
    bool mExitWithoutCleanup;