in main.go [382:421]
func GoVNCDriver_VNCSession_render(self, args, kwds *C.PyObject) *C.PyObject {
batchLock.Lock()
defer batchLock.Unlock()
if !compiledWithGL {
setError(errors.New("go_vncdriver was installed without OpenGL support. See https://github.com/openai/go-vncdriver for details on how debug."))
return nil
}
// parse name argument
nameC := new(*C.char)
closeC := new(C.int)
if C.PyArg_ParseTuple_render(args, kwds, nameC, closeC) == 0 {
return nil
}
name := C.GoString(*nameC)
close := *closeC != C.int(0)
ptr := uintptr(unsafe.Pointer(self))
info, ok := batchMgr[ptr]
if !ok {
setError(errors.New("VNCSession is already closed"))
return nil
}
if err := info.initRenderer(name); err != nil {
setError(err)
return nil
}
err := info.batch.Render(name, close)
if err != nil {
// reportBestError(info.batch, err)
setError(err)
return nil
}
C.go_vncdriver_incref(Py_None)
return Py_None
}