booting: bypassing envp args from emulator main to qemu main 47/19947/1
authorJinhyung Choi <jinhyung2.choi@samsung.com>
Wed, 23 Apr 2014 10:15:31 +0000 (19:15 +0900)
committerJinhyung Choi <jinhyung2.choi@samsung.com>
Wed, 23 Apr 2014 10:15:31 +0000 (19:15 +0900)
Change-Id: I5b55105531b21b28853faf4e4717b81efeb5e342
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
tizen/src/emulator.c

index 0bd636caa3e7865cf155e984ab7ed9ee036ccfd5..d4bea6be9a8549ddced471802fdd6399f274ede9 100644 (file)
@@ -520,7 +520,11 @@ void prepare_maru(void)
 
 int qemu_main(int argc, char **argv, char **envp);
 
+#ifdef CONFIG_LINUX
+static int emulator_main(int argc, char *argv[], char **envp)
+#else
 static int emulator_main(int argc, char *argv[])
+#endif
 {
     parse_options(argc, argv, &_skin_argc,
                 &_skin_argv, &_qemu_argc, &_qemu_argv);
@@ -556,20 +560,17 @@ static int emulator_main(int argc, char *argv[])
     socket_init();
 
     INFO("qemu main start!\n");
+#ifdef CONFIG_LINUX
+    qemu_main(_qemu_argc, _qemu_argv, envp);
+#else
     qemu_main(_qemu_argc, _qemu_argv, NULL);
-
+#endif
     exit_emulator();
 
     return 0;
 }
 
-#ifndef CONFIG_DARWIN
-int main(int argc, char *argv[])
-{
-    maru_register_exception_handler();
-    return emulator_main(argc, argv);
-}
-#else
+#ifdef CONFIG_DARWIN
 int g_argc;
 
 static void* main_thread(void* args)
@@ -601,5 +602,17 @@ int main(int argc, char *argv[])
 
     return 0;
 }
+#elif defined (CONFIG_LINUX)
+int main(int argc, char *argv[], char **envp)
+{
+    maru_register_exception_handler();
+    return emulator_main(argc, argv, envp);
+}
+#else
+int main(int argc, char *argv[])
+{
+    maru_register_exception_handler();
+    return emulator_main(argc, argv);
+}
 #endif