From 1631577b8e1c57d0ae89fae6514980974a60498d Mon Sep 17 00:00:00 2001
From: twinaphex <libretro@gmail.com>
Date: Tue, 25 Sep 2018 01:37:15 +0200
Subject: [PATCH] Simplify code

---
 menu/menu_setting.c | 33 +++++++++++++++++++--------------
 1 file changed, 19 insertions(+), 14 deletions(-)

diff --git a/menu/menu_setting.c b/menu/menu_setting.c
index 2d4456d1f3..3979e956c0 100644
--- a/menu/menu_setting.c
+++ b/menu/menu_setting.c
@@ -657,6 +657,7 @@ static int setting_string_action_left_netplay_mitm_server(
       void *data, bool wraparound)
 {
    int i;
+   int offset               = 0;
    bool               found = false;
    unsigned        list_len = ARRAY_SIZE(netplay_mitm_server_list);
    rarch_setting_t *setting = (rarch_setting_t*)data;
@@ -671,22 +672,25 @@ static int setting_string_action_left_netplay_mitm_server(
          /* move to the previous one in the list, wrap around if necessary */
          if (i - 1 >= 0)
          {
-            found = true;
-            strlcpy(setting->value.target.string, netplay_mitm_server_list[i - 1].name, sizeof(setting->value.target.string));
-            break;
+            found  = true;
+            offset = i - 1;
          }
          else if (wraparound)
          {
-            found = true;
-            strlcpy(setting->value.target.string, netplay_mitm_server_list[list_len - 1].name, sizeof(setting->value.target.string));
-            break;
+            found  = true;
+            offset = list_len - 1;
          }
+
+         if (found)
+            break;
       }
    }
 
    /* current entry was invalid, go back to the end */
    if (!found)
-      strlcpy(setting->value.target.string, netplay_mitm_server_list[list_len - 1].name, sizeof(setting->value.target.string));
+      offset = list_len - 1;
+
+   strlcpy(setting->value.target.string, netplay_mitm_server_list[offset].name, sizeof(setting->value.target.string));
 
    return 0;
 }
@@ -695,6 +699,7 @@ static int setting_string_action_right_netplay_mitm_server(
       void *data, bool wraparound)
 {
    unsigned i;
+   int offset               = 0;
    bool               found = false;
    unsigned        list_len = ARRAY_SIZE(netplay_mitm_server_list);
    rarch_setting_t *setting = (rarch_setting_t*)data;
@@ -709,22 +714,22 @@ static int setting_string_action_right_netplay_mitm_server(
          /* move to the next one in the list, wrap around if necessary */
          if (i + 1 < list_len)
          {
-            found = true;
-            strlcpy(setting->value.target.string, netplay_mitm_server_list[i + 1].name, sizeof(setting->value.target.string));
-            break;
+            offset = i + 1;
+            found  = true;
          }
          else if (wraparound)
-         {
             found = true;
-            strlcpy(setting->value.target.string, netplay_mitm_server_list[0].name, sizeof(setting->value.target.string));
+
+         if (found)
             break;
-         }
       }
    }
 
    /* current entry was invalid, go back to the start */
    if (!found)
-      strlcpy(setting->value.target.string, netplay_mitm_server_list[0].name, sizeof(setting->value.target.string));
+      offset = 0;
+
+   strlcpy(setting->value.target.string, netplay_mitm_server_list[offset].name, sizeof(setting->value.target.string));
 
    return 0;
 }