diff --git a/apps/main.cpp b/apps/main.cpp index 3a22fda5c..d501a0d9a 100644 --- a/apps/main.cpp +++ b/apps/main.cpp @@ -53,8 +53,12 @@ void ion_main(int argc, const char * const argv[]) { const char * appNames[] = {"home", EPSILON_APPS_NAMES}; for (int j = 0; j < AppsContainer::sharedAppsContainer()->numberOfApps(); j++) { App::Snapshot * snapshot = AppsContainer::sharedAppsContainer()->appSnapshotAtIndex(j); - int cmp = strcmp(argv[i]+2, appNames[j]); - if (cmp == '-') { + // Compare name in order to find if the firsts chars which are different are NULL and '-' + // -> check if the app name is in the argv + const char * s1 = argv[i]+2; + const char * s2 = appNames[j]; + while (*s1 != '\0' && (*s1 == *s2)) {s1++; s2++;} + if (*s2 == '\0' && *s1 == '-') { snapshot->setOpt(argv[i]+2+strlen(appNames[j])+1, argv[i+1]); break; }