(cheevos.c) Further cleanups

This commit is contained in:
twinaphex 2015-11-08 18:09:04 +01:00
parent 7b61f1eb27
commit 78d26b2e6f

View File

@ -349,8 +349,8 @@ static int cheevos_count__json_key(void *userdata, const char *name, size_t leng
static int cheevos_count__json_number(void *userdata, const char *number, size_t length)
{
cheevos_countud_t* ud = (cheevos_countud_t*)userdata;
long flags;
cheevos_countud_t* ud = (cheevos_countud_t*)userdata;
if (ud->in_cheevos && ud->field_hash == 0x0d2e96b2U /* Flags */)
{
@ -426,9 +426,9 @@ static unsigned cheevos_prefix_to_comp_size(char prefix)
static unsigned cheevos_read_hits(const char **memaddr)
{
char *end;
const char *str = *memaddr;
unsigned num_hits = 0;
char *end;
if (*str == '(' || *str == '.')
{
@ -442,8 +442,8 @@ static unsigned cheevos_read_hits(const char **memaddr)
static unsigned cheevos_parse_operator(const char **memaddr)
{
const char *str = *memaddr;
unsigned char op;
const char *str = *memaddr;
if (*str == '=' && str[1] == '=')
{
@ -492,9 +492,9 @@ static unsigned cheevos_parse_operator(const char **memaddr)
static void cheevos_parse_var(cheevos_var_t *var, const char **memaddr)
{
char *end;
const char *str = *memaddr;
unsigned base = 16;
char *end;
if (toupper(*str) == 'D' && str[1] == '0' && toupper(str[2]) == 'X')
{
@ -558,8 +558,8 @@ static void cheevos_parse_cond(cheevos_cond_t *cond, const char **memaddr)
static unsigned cheevos_count_cond_sets(const char *memaddr)
{
unsigned count = 0;
cheevos_cond_t cond;
unsigned count = 0;
do
{
@ -581,9 +581,9 @@ static unsigned cheevos_count_cond_sets(const char *memaddr)
static unsigned cheevos_count_conds_in_set(const char *memaddr, unsigned set)
{
cheevos_cond_t cond;
unsigned index = 0;
unsigned count = 0;
cheevos_cond_t cond;
do
{
@ -628,8 +628,7 @@ typedef struct
{
const char *string;
size_t length;
}
cheevos_field_t;
} cheevos_field_t;
typedef struct
{
@ -640,29 +639,28 @@ typedef struct
cheevos_field_t *field;
cheevos_field_t id, memaddr, title, desc, points, author;
cheevos_field_t modified, created, badge, flags;
}
cheevos_readud_t;
} cheevos_readud_t;
static INLINE const char *cheevos_dupstr(const cheevos_field_t *field)
{
char *string = (char*)malloc(field->length + 1);
if (string)
{
if (!string)
return NULL;
memcpy ((void*)string, (void*)field->string, field->length);
string[field->length] = 0;
}
return string;
}
static int cheevos_new_cheevo(cheevos_readud_t *ud)
{
int flags = strtol(ud->flags.string, NULL, 10);
const cheevos_condset_t *end;
unsigned set;
cheevos_condset_t *condset;
cheevo_t *cheevo;
int flags = strtol(ud->flags.string, NULL, 10);
if (flags == 3)
cheevo = cheevos_locals.core.cheevos + ud->core_count++;
@ -818,9 +816,10 @@ static int cheevos_parse(const char *json)
unsigned core_count, unofficial_count;
cheevos_readud_t ud;
settings_t *settings = config_get_ptr();
/* Just return OK if cheevos are disabled. */
if (!config_get_ptr()->cheevos.enable)
if (!settings->cheevos.enable)
return 0;
/* Count the number of achievements in the JSON file. */