diff options
| author | rajdakin <rajdakin@gmail.com> | 2024-11-28 09:17:00 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-28 09:17:00 +0100 |
| commit | fd613de55e3476d40d91ba887c553d77fa3ca5e9 (patch) | |
| tree | c234bc91ce7f0680df11c8d436a547fc7e2eb7da | |
| parent | b2dc460db91a5cec246ba96120ff17905d0b34af (diff) | |
| download | box64-fd613de55e3476d40d91ba887c553d77fa3ca5e9.tar.gz box64-fd613de55e3476d40d91ba887c553d77fa3ca5e9.zip | |
[WRAPPERHELPER] Transform from function to data if needed (#2089)
| -rw-r--r-- | wrapperhelper/src/generator.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/wrapperhelper/src/generator.c b/wrapperhelper/src/generator.c index 8061ba88..42eeb904 100644 --- a/wrapperhelper/src/generator.c +++ b/wrapperhelper/src/generator.c @@ -1103,7 +1103,7 @@ int solve_request_simple(request_t *req, type_t *emu_typ, type_t *target_typ, kh int needs_D = 0, needs_my = req->def.dat.has_size && (req->def.rty == RQT_DATAM); if (is_simple_type_simple(emu_typ, &needs_D, &needs_my, conv_map)) { // TODO: Hmm... - req->val.rty = needs_my ? RQT_DATAM : req->def.rty; + req->val.rty = needs_my ? RQT_DATAM : (IS_RQT_FUNCTION(req->def.rty) ? RQT_DATA : req->def.rty); req->val.dat.has_size = 1; req->val.dat.sz = emu_typ->szinfo.size; req->has_val = 1; @@ -1774,7 +1774,7 @@ int solve_request(request_t *req, type_t *emu_typ, type_t *target_typ, khash_t(c needs_my = 1; /* FALLTHROUGH */ case SAFE_OK: - req->val.rty = needs_my ? RQT_DATAM : req->def.rty; + req->val.rty = needs_my ? RQT_DATAM : (IS_RQT_FUNCTION(req->def.rty) ? RQT_DATA : req->def.rty); req->val.dat.has_size = 1; req->val.dat.sz = emu_typ->szinfo.size; req->has_val = 1; |