changeset 537:804df3409b51

- callback fix for non-trivial aggregate return values: allowing access to caller-reserved space user is supposed to copy non-triv object into
author Tassilo Philipp
date Sat, 23 Apr 2022 16:28:47 +0200
parents c0df40c888ac
children 35498b479505
files dyncallback/dyncall_args_x64.c
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/dyncallback/dyncall_args_x64.c	Sat Apr 23 15:36:11 2022 +0200
+++ b/dyncallback/dyncall_args_x64.c	Sat Apr 23 16:28:47 2022 +0200
@@ -144,8 +144,8 @@
   DCaggr *ag = *(args->aggrs++);
 
   if(!ag) {
-    /* non-trivial aggr */
-    result->p = ret;
+    /* non-trivial aggr: all we can do is to provide the ptr to the output space, user has to make copy */
+    result->p = args->reg_data.i[0];
     return;
   }