void GET_INIT(void)
{
char **array = explode("&", getenv("QUERY_STRING"));
char **tmp_array = NULL;
size_t size = count(array);
int pos = 0;
GET_ARGS = malloc(size + 1);
if (GET_ARGS == NULL)
exit(EXIT_FAILURE);
for (pos; pos < size; pos++)
{
tmp_array = explode("=", array[pos]);
if (tmp_array != NULL)
{
GET_ARGS[pos] = malloc(sizeof(char *) * 2);
if (GET_ARGS[pos] == NULL)
exit(EXIT_FAILURE);
if (tmp_array[0] == NULL)
{
GET_ARGS[pos][0] = NULL;
}
else
{
GET_ARGS[pos][0] = malloc(strlen(tmp_array[0]) + 1);
if (GET_ARGS[pos][0] == NULL)
exit(EXIT_FAILURE);
strcpy(GET_ARGS[pos][0], tmp_array[0]);
}
if (tmp_array[1] == NULL)
{
GET_ARGS[pos][1] = NULL;
}
else
{
GET_ARGS[pos][1] = malloc(strlen(tmp_array[1]) + 1);
if (GET_ARGS[pos][1] == NULL)
exit(EXIT_FAILURE);
strcpy(GET_ARGS[pos][1], tmp_array[1]);
}
}
}
GET_ARGS[pos] = NULL;
if (tmp_array != NULL)
{
free(tmp_array);
}
free(array);
}