X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Ftypes%2Fdecl_extvar.c;h=24ff39a0284cce4b550af4a14865b16a30aa951d;hp=446a28e9ff8ff52c6c0f0b9f321493d33574d6fe;hb=32cdc02a91cd535ae21e9a775664995f4691a824;hpb=14969a8b4386d7c38e90775e1c57886c9bf3839e diff --git a/src/types/decl_extvar.c b/src/types/decl_extvar.c index 446a28e..24ff39a 100644 --- a/src/types/decl_extvar.c +++ b/src/types/decl_extvar.c @@ -151,7 +151,12 @@ struct psi_decl *psi_decl_extvar_getter(struct psi_decl_extvar *evar) void psi_decl_extvar_get(struct psi_decl_extvar *evar, void *ptr) { - memcpy(ptr, evar->sym, evar->size); + if (evar->arg->var->array_size) { + /* arrays are passed as pointer */ + *(void **) ptr = evar->sym; + } else { + memcpy(ptr, evar->sym, evar->size); + } }