milvus/internal/util/cgo/errors.go
congqixia 709594f158
enhance: [2.5] Use v2 package name for pkg module (#40117)
Cherry-pick from master
pr: #39990
Related to #39095

https://go.dev/doc/modules/version-numbers

Update pkg version according to golang dep version convention

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-02-23 00:46:01 +08:00

28 lines
495 B
Go

package cgo
/*
#cgo pkg-config: milvus_core
#include "common/type_c.h"
#include <stdlib.h>
*/
import "C"
import (
"unsafe"
"github.com/milvus-io/milvus/pkg/v2/util/merr"
)
func ConsumeCStatusIntoError(status *C.CStatus) error {
if status.error_code == 0 {
return nil
}
errorCode := status.error_code
errorMsg := C.GoString(status.error_msg)
getCGOCaller().call("free", func() {
C.free(unsafe.Pointer(status.error_msg))
})
return merr.SegcoreError(int32(errorCode), errorMsg)
}