diff --git a/src/freedombone-utils-selector b/src/freedombone-utils-selector
index fdf3c81455b3f8dd068c0b5e962014e437828838..18281ef664026b5ba98f0ac60bd146b1e3722dbe 100755
--- a/src/freedombone-utils-selector
+++ b/src/freedombone-utils-selector
@@ -76,7 +76,7 @@ function app_save_variables {
 # gets the variants list from an app script
 function app_variants {
     filename=$1
-    variants_line=$(cat ${filename} | grep "VARIANTS=")
+    variants_line=$(cat ${filename} | grep 'VARIANTS=')
     if [[ "$variants_line" == *"'"* ]]; then
         variants_list=$(echo "$variants_line" | awk -F '=' '{print $2}' | awk -F "'" '{print $2}')
     else
@@ -97,13 +97,15 @@ function item_in_array {
 function available_system_variants {
     FILES=/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-*
 
+    available_variants_list=()
     for filename in $FILES
     do
-        variants_list=$(app_variants $filename)
-        variants_array=($variants_list)
-        for variant_str in "${vars[@]}"
+        system_variants_list=$(app_variants $filename)
+        variants_array=($system_variants_list)
+        for variant_str in "${variants_array[@]}"
         do
-            if [[ $(item_in_array "$variant_str" ${available_variants_list[@]}) == "0" ]]; then
+            item_in_array "${variant_str}" "${available_variants_list[@]}"
+            if [[ $? != 0 ]]; then
                 available_variants_list+=("$variant_str")
             fi
         done
@@ -238,7 +240,9 @@ function detect_apps {
     for filename in $FILES
     do
         app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
-        if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
+
+        item_in_array "${app_name}" "${APPS_AVAILABLE[@]}"
+        if [[ $? != 0 ]]; then
             APPS_AVAILABLE+=("${app_name}")
             APPS_CHOSEN+=("0")
         fi
@@ -266,7 +270,9 @@ function detect_installable_apps {
     for filename in $FILES
     do
         app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
-        if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
+
+        item_in_array "${app_name}" "${APPS_AVAILABLE[@]}"
+        if [[ $? != 0 ]]; then
             variants_list=$(app_variants $filename)
             # check for empty string
             if [ ${#variants_list} -gt 0 ]; then
@@ -295,7 +301,9 @@ function choose_apps_for_variant {
     for filename in $FILES
     do
         app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
-        if [[ $(item_in_array ${app_name} ${APPS_AVAILABLE[@]}) != 0 ]]; then
+
+        item_in_array "${app_name}" "${APPS_AVAILABLE[@]}"
+        if [[ $? != 0 ]]; then
             APPS_AVAILABLE+=("${app_name}")
 
             if grep -q "VARIANTS=" ${filename}; then
diff --git a/src/freedombone-utils-setup b/src/freedombone-utils-setup
index 27cc2cb992831c3cd21cf0f4830b7f92c2475e25..3a56ee0a7c114c5d5c3283a70bcdb87934b3d195 100755
--- a/src/freedombone-utils-setup
+++ b/src/freedombone-utils-setup
@@ -489,7 +489,9 @@ function upgrade_apps {
     for filename in $FILES
     do
         app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
-        if [[ $(item_in_array ${app_name} ${APPS_COMPLETED[@]}) != 0 ]]; then
+
+        item_in_array "${app_name}" "${APPS_COMPLETED[@]}"
+        if [[ $? != 0 ]]; then
             function_check app_is_installed
             if [[ "$(app_is_installed $a)" == "1" ]]; then
                 APPS_COMPLETED+=("${app_name}")