}
-static void construct_main_window(int skin_argc, char** skin_argv)
+static void construct_main_window(int skin_argc, char* skin_argv[])
{
INFO("construct main window\n");
start_skin_server(11111, 0, 0);
- if (start_skin_client() == 0) {
+ if (start_skin_client(skin_argc, skin_argv) == 0) {
//TODO:
}
}
-static int parse_options(int argc, char* argv[], int* skin_argc, char*** skin_argv, int* qemu_argc, char*** qemu_argv)
+static void parse_options(int argc, char* argv[], int* skin_argc, char*** skin_argv, int* qemu_argc, char*** qemu_argv)
{
int i;
+ int j;
- *skin_argv = &(argv[1]);
- for(i = 1; i < argc; ++i)
+// FIXME !!!
+// TODO:
+ for(i = 1; i < argc; ++i)
{
- if(strncmp(argv[i], "--qemu-args", 11) == 0)
+ if(strncmp(argv[i], "--skin-args", 11) == 0)
{
- *skin_argc = i - 1;
-
- *qemu_argc = argc - i - 1;
- *qemu_argv = &(argv[i + 1]);
+ *skin_argv = &(argv[i + 1]);
+ break;
}
- }
-
-/*
- printf("%d\n", *skin_argc);
- for(i = 0; i < *skin_argc; ++i)
- {
- printf("%s\n", (*skin_argv)[i]);
- }
+ if(strncmp(argv[j], "--qemu-args", 11) == 0)
+ {
+ *skin_argc = j - i - 1;
- printf("%d\n", *qemu_argc);
- for(i = 0; i < *qemu_argc; ++i)
- {
- printf("%s\n", (*qemu_argv)[i]);
+ *qemu_argc = argc - j - i;
+ *qemu_argv = &(argv[j + 1]);
+ break;
+ }
}
-*/
}
int qemu_main(int argc, char** argv, char** envp);
{
tizen_base_port = get_sdb_base_port();
- int skin_argc;
- char** skin_argv;
+ int skin_argc = 0;
+ char** skin_argv = NULL;
- int qemu_argc;
- char** qemu_argv;
+ int qemu_argc = 0;
+ char** qemu_argv = NULL;
parse_options(argc, argv, &skin_argc, &skin_argv, &qemu_argc, &qemu_argv);
int i;
-/*
printf("%d\n", skin_argc);
for(i = 0; i < skin_argc; ++i)
{
{
printf("%s\n", qemu_argv[i]);
}
-*/
- construct_main_window(skin_argc, skin_argv);
- qemu_main(qemu_argc, qemu_argv, NULL);
+// construct_main_window(skin_argc, skin_argv);
+// qemu_main(qemu_argc, qemu_argv, NULL);
return 0;
}
#define JAVA_EXEFILE_PATH "java"
#define JAVA_EXEOPTION "-jar"
-static void* run_skin_client(void* args)
+// function modified by caramis
+// for delivery argv
+
+static int skin_argc;
+static char** skin_argv;
+
+static void* run_skin_client()
{
char cmd[256];
+ char argv[200];
- sprintf(cmd, "%s %s %s", JAVA_EXEFILE_PATH, JAVA_EXEOPTION, JAR_SKINFILE_PATH);
+ int i;
+ for(i = 0; i < skin_argc; ++i) {
+ strncat(argv, skin_argv[i], strlen(skin_argv[i]));
+ strncat(argv, " ", 1);
+ }
+
+ sprintf(cmd, "%s %s %s %s", JAVA_EXEFILE_PATH, JAVA_EXEOPTION, JAR_SKINFILE_PATH, argv);
system(cmd);
return NULL;
}
-int start_skin_client(void)
+int start_skin_client(int argc, char* argv[])
{
+ skin_argc = argc;
+ skin_argv = argv;
+
pthread_t thread_id = -1;
if (0 != pthread_create(&thread_id, NULL, run_skin_client, NULL)) {