From 9cd3e28c4ea1b58e18959c038460f3fc2b2d8423 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sun, 17 Apr 2016 22:20:28 -0700 Subject: [PATCH] [Go] Fix "in" typemap for char *&. --- Lib/go/go.swg | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Lib/go/go.swg b/Lib/go/go.swg index 40e274119..bdd2aedea 100644 --- a/Lib/go/go.swg +++ b/Lib/go/go.swg @@ -441,11 +441,12 @@ $1[$input.n] = '\0'; %} -%typemap(in) char *& +%typemap(in) char *& (char *temp) %{ - $1 = ($1_ltype)malloc($input.n + 1); - memcpy($1, $input.p, $input.n); - $1[$input.n] = '\0'; + temp = (char *)malloc($input.n + 1); + memcpy(temp, $input.p, $input.n); + temp[$input.n] = '\0'; + $1 = ($1_ltype)&temp; %} %typemap(freearg)