From fdc70a0fab9d988e1f6136d3a3695bd36a2a662c Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Wed, 16 Sep 2015 15:22:36 +0900 Subject: [PATCH] use math.MaxInt32. related issue #238 --- callback.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/callback.go b/callback.go index 6048f27..7a0a995 100644 --- a/callback.go +++ b/callback.go @@ -22,22 +22,21 @@ import "C" import ( "errors" "fmt" + "math" "reflect" "unsafe" ) //export callbackTrampoline func callbackTrampoline(ctx *C.sqlite3_context, argc int, argv **C.sqlite3_value) { - // TODO should create slice dynamically? - args := (*[1 << 20]*C.sqlite3_value)(unsafe.Pointer(argv))[:argc:argc] + args := (*[math.MaxInt32 - 1]*C.sqlite3_value)(unsafe.Pointer(argv))[:argc:argc] fi := (*functionInfo)(unsafe.Pointer(C.sqlite3_user_data(ctx))) fi.Call(ctx, args) } //export stepTrampoline func stepTrampoline(ctx *C.sqlite3_context, argc int, argv **C.sqlite3_value) { - // TODO should create slice dynamically? - args := (*[1 << 20]*C.sqlite3_value)(unsafe.Pointer(argv))[:argc:argc] + args := (*[math.MaxInt32 - 1]*C.sqlite3_value)(unsafe.Pointer(argv))[:argc:argc] ai := (*aggInfo)(unsafe.Pointer(C.sqlite3_user_data(ctx))) ai.Step(ctx, args) }