merged API functions
[rocksndiamonds.git] / src / screens.c
index 369124a77f917106b90e39b64d3d69e5902298d7..bb7a2b5b3399f9598d48763873fa065488723fc4 100644 (file)
@@ -4042,11 +4042,40 @@ void HandleInfoScreen(int mx, int my, int dx, int dy, int button)
 // change name functions
 // ============================================================================
 
-static void RenamePlayerOnServerExt(struct HttpRequest *request,
-                                   struct HttpResponse *response,
-                                   char *player_name_raw,
-                                   char *player_uuid_raw)
+struct ApiRenamePlayerThreadData
 {
+  char *player_name;
+  char *player_uuid;
+};
+
+static void *CreateThreadData_ApiRenamePlayer(void)
+{
+  struct ApiRenamePlayerThreadData *data =
+    checked_malloc(sizeof(struct ApiRenamePlayerThreadData));
+
+  data->player_name = getStringCopy(setup.player_name);
+  data->player_uuid = getStringCopy(setup.player_uuid);
+
+  return data;
+}
+
+static void FreeThreadData_ApiRenamePlayer(void *data_raw)
+{
+  struct ApiRenamePlayerThreadData *data = data_raw;
+
+  checked_free(data->player_name);
+  checked_free(data->player_uuid);
+  checked_free(data);
+}
+
+static void ApiRenamePlayerExt(struct HttpRequest *request,
+                              struct HttpResponse *response,
+                              void *data_raw)
+{
+  struct ApiRenamePlayerThreadData *data = data_raw;
+  char *player_name_raw = data->player_name;
+  char *player_uuid_raw = data->player_uuid;
+
   request->hostname = setup.api_server_hostname;
   request->port     = API_SERVER_PORT;
   request->method   = API_SERVER_METHOD;
@@ -4091,46 +4120,28 @@ static void RenamePlayerOnServerExt(struct HttpRequest *request,
   }
 }
 
-static void RenamePlayerOnServer(char *player_name, char *player_uuid)
+static int ApiRenamePlayerThread(void *data_raw)
 {
   struct HttpRequest *request = checked_calloc(sizeof(struct HttpRequest));
   struct HttpResponse *response = checked_calloc(sizeof(struct HttpResponse));
 
-  RenamePlayerOnServerExt(request, response, player_name, player_uuid);
+  ApiRenamePlayerExt(request, response, data_raw);
+
+  FreeThreadData_ApiRenamePlayer(data_raw);
 
   checked_free(request);
   checked_free(response);
-}
-
-struct RenamePlayerOnServerThreadData
-{
-  char *player_name;
-  char *player_uuid;
-};
-
-static int RenamePlayerOnServerThread(void *data_raw)
-{
-  struct RenamePlayerOnServerThreadData *data = data_raw;
-
-  RenamePlayerOnServer(data->player_name, data->player_uuid);
-
-  checked_free(data->player_name);
-  checked_free(data->player_uuid);
-  checked_free(data);
 
   return 0;
 }
 
-static void RenamePlayerOnServerAsThread(void)
+static void ApiRenamePlayerAsThread(void)
 {
-  struct RenamePlayerOnServerThreadData *data =
-    checked_malloc(sizeof(struct RenamePlayerOnServerThreadData));
-
-  data->player_name = getStringCopy(setup.player_name);
-  data->player_uuid = getStringCopy(setup.player_uuid);
+  struct ApiRenamePlayerThreadData *data =
+    CreateThreadData_ApiRenamePlayer();
 
-  ExecuteAsThread(RenamePlayerOnServerThread,
-                 "RenamePlayerOnServer", data,
+  ExecuteAsThread(ApiRenamePlayerThread,
+                 "ApiRenamePlayer", data,
                  "rename player on server");
 }
 
@@ -4273,7 +4284,7 @@ static void setTypeNameValues(char *name, struct TextPosInfo *pos,
   SaveSetup();
 
   // change name of edited user on score server
-  RenamePlayerOnServerAsThread();
+  ApiRenamePlayerAsThread();
 
   if (game_status == GAME_MODE_PSEUDO_TYPENAMES || reset_setup)
   {