fixed SIGSEGV caused by go's gc