Fixes to the device and machine configuration string getters and accordingly reverted the serial passthrough fix as well as it's no longer needed.
This commit is contained in:
47
src/device.c
47
src/device.c
@@ -637,16 +637,24 @@ device_get_instance(void)
|
||||
const char *
|
||||
device_get_config_string(const char *str)
|
||||
{
|
||||
const device_config_t *cfg = device_current.dev->config;
|
||||
const char *ret = "";
|
||||
|
||||
while (cfg && cfg->type != CONFIG_END) {
|
||||
if (!strcmp(str, cfg->name))
|
||||
return (config_get_string((char *) device_current.name, (char *) str, (char *) cfg->default_string));
|
||||
if (device_current.dev != NULL) {
|
||||
const device_config_t *cfg = device_current.dev->config;
|
||||
|
||||
cfg++;
|
||||
while ((cfg != NULL) && (cfg->type != CONFIG_END)) {
|
||||
if (!strcmp(str, cfg->name)) {
|
||||
const char *s = (config_get_string((char *) device_current.name,
|
||||
(char *) str, (char *) cfg->default_string));
|
||||
ret = (s == NULL) ? "" : s;
|
||||
break;
|
||||
}
|
||||
|
||||
cfg++;
|
||||
}
|
||||
}
|
||||
|
||||
return (NULL);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -870,24 +878,29 @@ machine_get_config_int(char *str)
|
||||
return 0;
|
||||
}
|
||||
|
||||
char *
|
||||
const char *
|
||||
machine_get_config_string(char *str)
|
||||
{
|
||||
const device_t *dev = machine_get_device(machine);
|
||||
const device_config_t *cfg;
|
||||
const device_t *dev = machine_get_device(machine);
|
||||
const char *ret = "";
|
||||
|
||||
if (dev == NULL)
|
||||
return 0;
|
||||
if (dev != NULL) {
|
||||
const device_config_t *cfg;
|
||||
|
||||
cfg = dev->config;
|
||||
while (cfg && cfg->type != CONFIG_END) {
|
||||
if (!strcmp(str, cfg->name))
|
||||
return (config_get_string((char *) dev->name, str, (char *) cfg->default_string));
|
||||
cfg = dev->config;
|
||||
while ((cfg != NULL) && (cfg->type != CONFIG_END)) {
|
||||
if (!strcmp(str, cfg->name)) {
|
||||
const char *s = config_get_string((char *) dev->name, str,
|
||||
(char *) cfg->default_string);
|
||||
ret = (s == NULL) ? "" : s;
|
||||
break;
|
||||
}
|
||||
|
||||
cfg++;
|
||||
cfg++;
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
return ret;
|
||||
}
|
||||
|
||||
const device_t *
|
||||
|
||||
Reference in New Issue
Block a user