handles: panic when we cannot retrieve handle data
This commit is contained in:
parent
a843b7247f
commit
d95932c84a
6
index.go
6
index.go
|
@ -234,12 +234,10 @@ func (v *Index) RemoveAll(pathspecs []string, callback IndexMatchedPathCallback)
|
||||||
|
|
||||||
//export indexMatchedPathCallback
|
//export indexMatchedPathCallback
|
||||||
func indexMatchedPathCallback(cPath, cMatchedPathspec *C.char, payload unsafe.Pointer) int {
|
func indexMatchedPathCallback(cPath, cMatchedPathspec *C.char, payload unsafe.Pointer) int {
|
||||||
if payload == nil {
|
if callback, ok := pointerHandles.Get(payload).(IndexMatchedPathCallback); ok {
|
||||||
return 0
|
|
||||||
} else if callback, ok := pointerHandles.Get(payload).(IndexMatchedPathCallback); ok {
|
|
||||||
return callback(C.GoString(cPath), C.GoString(cMatchedPathspec))
|
return callback(C.GoString(cPath), C.GoString(cMatchedPathspec))
|
||||||
} else {
|
} else {
|
||||||
return -1
|
panic("invalid matched path callback")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,7 @@ func SubmoduleVisitor(csub unsafe.Pointer, name *C.char, handle unsafe.Pointer)
|
||||||
if callback, ok := pointerHandles.Get(handle).(SubmoduleCbk); ok {
|
if callback, ok := pointerHandles.Get(handle).(SubmoduleCbk); ok {
|
||||||
return (C.int)(callback(sub, C.GoString(name)))
|
return (C.int)(callback(sub, C.GoString(name)))
|
||||||
} else {
|
} else {
|
||||||
return -1
|
panic("invalid submodule visitor callback")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
tree.go
2
tree.go
|
@ -97,7 +97,7 @@ func CallbackGitTreeWalk(_root unsafe.Pointer, _entry unsafe.Pointer, ptr unsafe
|
||||||
if callback, ok := pointerHandles.Get(ptr).(TreeWalkCallback); ok {
|
if callback, ok := pointerHandles.Get(ptr).(TreeWalkCallback); ok {
|
||||||
return C.int(callback(root, newTreeEntry(entry)))
|
return C.int(callback(root, newTreeEntry(entry)))
|
||||||
} else {
|
} else {
|
||||||
return C.int(-1)
|
panic("invalid treewalk callback")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue