提交 63531610 编写于 作者: yanghye's avatar yanghye

upgrade-dev v2.3.8

上级 a5bca173
......@@ -236,6 +236,7 @@ func (m *TCEFApplication) SetOnRenderLoadError(fn GlobalCEFAppEventOnRenderLoadE
}
func init() {
//var renderLock sync.Mutex
lcl.RegisterExtEventCallback(func(fn interface{}, getVal func(idx int) uintptr) bool {
getPtr := func(i int) unsafe.Pointer {
return unsafe.Pointer(getVal(i))
......@@ -350,6 +351,7 @@ func init() {
frame := &ICefFrame{instance: getPtr(1)}
fn.(GlobalCEFAppEventOnRenderLoadError)(browse, frame, TCefErrorCode(getVal(2)), api.GoStr(getVal(3)), api.GoStr(getVal(4)))
case RenderProcessMessageReceived:
//renderLock.Lock()
browse := &ICefBrowser{instance: getPtr(0)}
frame := &ICefFrame{instance: getPtr(1)}
processId := CefProcessId(getVal(2))
......@@ -360,8 +362,9 @@ func init() {
*result = renderProcessMessageReceived(browse, frame, processId, message)
}
frame.Free()
//browse.Free()
browse.Free()
message.Free()
//renderLock.Unlock()
default:
return false
}
......
......@@ -22,6 +22,7 @@ import (
)
func init() {
//var browserLock sync.Mutex
var resourceEventGet = func(fn interface{}, getVal func(idx int) uintptr, resp bool) (sender lcl.IObject, browser *ICefBrowser, frame *ICefFrame, request *ICefRequest, response *ICefResponse) {
var (
instance unsafe.Pointer
......@@ -76,6 +77,7 @@ func init() {
fn.(ChromiumEventOnFindResult)(lcl.AsObject(sender), browse, int32(getVal(2)), int32(getVal(3)), (*TCefRect)(getPtr(4)), int32(getVal(5)), api.GoBool(getVal(6)))
//browse.Free()
case BrowseProcessMessageReceived:
//browserLock.Lock()
sender := getPtr(0)
browse := &ICefBrowser{instance: getPtr(1)}
frame := &ICefFrame{instance: getPtr(2)}
......@@ -87,8 +89,9 @@ func init() {
*result = browserProcessMessageReceived(browse, frame, processId, message)
}
frame.Free()
//browse.Free()
browse.Free()
message.Free()
//browserLock.Unlock()
case ChromiumEventOnResourceLoadComplete:
sender, browse, frame, request, response := resourceEventGet(fn, getVal, true)
fn.(ChromiumEventOnResourceLoadComplete)(sender, browse, frame, request, response, *(*consts.TCefUrlRequestStatus)(getPtr(5)), *(*int64)(getPtr(6)))
......
......@@ -254,6 +254,9 @@ func (m *v8ValueProcessMessageConvert) JSONObjectToV8Value(object json.JSONObjec
// V8ValueToProcessMessageBytes ICefV8Value 转换 [[]byte] 进程消息
func (m *v8ValueProcessMessageConvert) V8ValueToProcessMessageBytes(v8value *ICefV8Value) []byte {
if !v8value.IsValid() {
return nil
}
if v8value.IsArray() {
if result, err := m.V8valueArrayToSlice(v8value); err == nil {
if v, err := jsoniter.Marshal(result); err == nil {
......
......@@ -369,7 +369,7 @@ func (m *ICefV8Value) SetValueByKey(key string, value *ICefV8Value, attribute co
func (m *ICefV8Value) SetValueByIndex(index int32, value *ICefV8Value) bool {
if m.valueByIndex != nil {
m.valueByIndex = append(m.valueByIndex, value)
m.valueByIndex[index] = value
}
r1, _, _ := imports.Proc(internale_CefV8Value_SetValueByIndex).Call(m.Instance(), uintptr(index), value.Instance())
return api.GoBool(r1)
......
......@@ -97,12 +97,10 @@ func main() {
})
ipc.On("testGoEmitAndCallback", func() {
fmt.Println("testGoEmitAndCallback")
//触发JS监听的函数,并传入参数
ipc.EmitAndCallback("onTestName2", []any{r0, r1 + count, r2, r3, r4, r5, r6, r7, r8, r9, r10}, func(r1 string) {
fmt.Println("onTestName2 r1: ", r1)
})
//ipc.EmitAndCallback("", func() {}, "aaaa")
})
ipc.On("testResultArgs", func(args1 int) (string, int, float64, bool, *MyError, []string, []*src.StructVarDemo, []src.StructVarDemo, map[string]string, map[string]interface{}, []map[string]interface{}) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册