forked from Dniel97/segatools
Use new iohook_open_nul_fd() API
Makes error handling more consistent
This commit is contained in:
parent
7ee74214f7
commit
879dc0bfb4
@ -85,7 +85,11 @@ HRESULT ds_hook_init(const struct ds_config *cfg)
|
|||||||
return hr;
|
return hr;
|
||||||
}
|
}
|
||||||
|
|
||||||
ds_fd = iohook_open_dummy_fd();
|
hr = iohook_open_nul_fd(&ds_fd);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
@ -89,7 +89,12 @@ HRESULT gpio_hook_init(const struct gpio_config *cfg)
|
|||||||
|
|
||||||
memcpy(&gpio_config, cfg, sizeof(*cfg));
|
memcpy(&gpio_config, cfg, sizeof(*cfg));
|
||||||
|
|
||||||
gpio_fd = iohook_open_dummy_fd();
|
hr = iohook_open_nul_fd(&gpio_fd);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
hr = iohook_push_handler(gpio_handle_irp);
|
hr = iohook_push_handler(gpio_handle_irp);
|
||||||
|
|
||||||
if (FAILED(hr)) {
|
if (FAILED(hr)) {
|
||||||
|
@ -50,7 +50,12 @@ HRESULT jvs_hook_init(const struct jvs_config *cfg)
|
|||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
jvs_fd = iohook_open_dummy_fd();
|
hr = iohook_open_nul_fd(&jvs_fd);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
hr = iohook_push_handler(jvs_handle_irp);
|
hr = iohook_push_handler(jvs_handle_irp);
|
||||||
|
|
||||||
if (FAILED(hr)) {
|
if (FAILED(hr)) {
|
||||||
|
17
board/io4.c
17
board/io4.c
@ -99,17 +99,30 @@ static void *io4_ops_ctx;
|
|||||||
|
|
||||||
HRESULT io4_hook_init(const struct io4_ops *ops, void *ctx)
|
HRESULT io4_hook_init(const struct io4_ops *ops, void *ctx)
|
||||||
{
|
{
|
||||||
|
HRESULT hr;
|
||||||
|
|
||||||
assert(ops != NULL);
|
assert(ops != NULL);
|
||||||
|
|
||||||
async_init(&io4_async, NULL);
|
async_init(&io4_async, NULL);
|
||||||
|
|
||||||
io4_fd = iohook_open_dummy_fd();
|
hr = iohook_open_nul_fd(&io4_fd);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
io4_ops = ops;
|
io4_ops = ops;
|
||||||
io4_ops_ctx = ctx;
|
io4_ops_ctx = ctx;
|
||||||
io4_system_status = 0x02; /* idk */
|
io4_system_status = 0x02; /* idk */
|
||||||
iohook_push_handler(io4_handle_irp);
|
iohook_push_handler(io4_handle_irp);
|
||||||
|
|
||||||
return setupapi_add_phantom_dev(&hid_guid, io4_path);
|
hr = setupapi_add_phantom_dev(&hid_guid, io4_path);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT io4_handle_irp(struct irp *irp)
|
static HRESULT io4_handle_irp(struct irp *irp)
|
||||||
|
@ -26,15 +26,27 @@ static HANDLE hwmon_fd;
|
|||||||
|
|
||||||
HRESULT hwmon_hook_init(const struct hwmon_config *cfg)
|
HRESULT hwmon_hook_init(const struct hwmon_config *cfg)
|
||||||
{
|
{
|
||||||
|
HRESULT hr;
|
||||||
|
|
||||||
assert(cfg != NULL);
|
assert(cfg != NULL);
|
||||||
|
|
||||||
if (!cfg->enable) {
|
if (!cfg->enable) {
|
||||||
return S_FALSE;
|
return S_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
hwmon_fd = iohook_open_dummy_fd();
|
hr = iohook_open_nul_fd(&hwmon_fd);
|
||||||
|
|
||||||
return iohook_push_handler(hwmon_handle_irp);
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr = iohook_push_handler(hwmon_handle_irp);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
|
return S_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT hwmon_handle_irp(struct irp *irp)
|
static HRESULT hwmon_handle_irp(struct irp *irp)
|
||||||
|
@ -139,7 +139,12 @@ HRESULT nusec_hook_init(
|
|||||||
nusec_nearfull = 0x00010200;
|
nusec_nearfull = 0x00010200;
|
||||||
nusec_play_count = 0;
|
nusec_play_count = 0;
|
||||||
nusec_play_limit = 1024;
|
nusec_play_limit = 1024;
|
||||||
nusec_fd = iohook_open_dummy_fd();
|
|
||||||
|
hr = iohook_open_nul_fd(&nusec_fd);
|
||||||
|
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
return hr;
|
||||||
|
}
|
||||||
|
|
||||||
hr = iohook_push_handler(nusec_handle_irp);
|
hr = iohook_push_handler(nusec_handle_irp);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user