Factor out common dll variable list lookup into lookup_dllvar()

This commit is contained in:
Kevin Easton
2017-11-03 16:22:57 +11:00
parent 3b2793877d
commit 0703126773

View File

@@ -714,32 +714,34 @@ int BX_check_module_version(unsigned long number)
} }
#ifdef WANT_DLL #ifdef WANT_DLL
char *BX_get_dllstring_var(char *typestr) static IrcVariableDll *lookup_dllvar(char *name)
{ {
IrcVariableDll *dll = NULL; IrcVariableDll *dll = NULL;
if (typestr)
dll = (IrcVariableDll *) find_in_list((List **)&dll_variable, typestr, 0); if (name)
return (dll?dll->string:NULL); dll = (IrcVariableDll *)find_in_list((List **)&dll_variable, name, 0);
return dll;
} }
char *BX_get_dllstring_var(char *typestr)
{
IrcVariableDll *dll = lookup_dllvar(typestr);
return dll ? dll->string : NULL;
}
int BX_get_dllint_var(char *typestr) int BX_get_dllint_var(char *typestr)
{ {
IrcVariableDll *dll = NULL; IrcVariableDll *dll = lookup_dllvar(typestr);
if (typestr) return dll ? dll->integer : -1;
dll = (IrcVariableDll *) find_in_list((List **)&dll_variable, typestr, 0);
return (dll?dll->integer:-1);
} }
void BX_set_dllstring_var(char *typestr, char *string) void BX_set_dllstring_var(char *typestr, char *string)
{ {
if (typestr) IrcVariableDll *dll = lookup_dllvar(typestr);
if (dll)
{ {
IrcVariableDll *dll = NULL;
if (typestr)
dll = (IrcVariableDll *) find_in_list((List **)&dll_variable, typestr, 0);
if (!dll)
return;
if (string) if (string)
malloc_strcpy(&dll->string, string); malloc_strcpy(&dll->string, string);
else else
@@ -749,13 +751,10 @@ void BX_set_dllstring_var(char *typestr, char *string)
void BX_set_dllint_var(char *typestr, unsigned int value) void BX_set_dllint_var(char *typestr, unsigned int value)
{ {
if (typestr) IrcVariableDll *dll = lookup_dllvar(typestr);
if (dll)
{ {
IrcVariableDll *dll = NULL;
if (typestr)
dll = (IrcVariableDll *) find_in_list((List **)&dll_variable, typestr, 0);
if (!dll)
return;
dll->integer = value; dll->integer = value;
} }
} }