diff --git a/relay/relay_task.go b/relay/relay_task.go index 595ee7e2..0754e023 100644 --- a/relay/relay_task.go +++ b/relay/relay_task.go @@ -24,6 +24,10 @@ Task 任务通过平台、Action 区分任务 */ func RelayTaskSubmit(c *gin.Context, info *relaycommon.RelayInfo) (taskErr *dto.TaskError) { info.InitChannelMeta(c) + // ensure TaskRelayInfo is initialized to avoid nil dereference when accessing embedded fields + if info.TaskRelayInfo == nil { + info.TaskRelayInfo = &relaycommon.TaskRelayInfo{} + } platform := constant.TaskPlatform(c.GetString("platform")) if platform == "" { platform = GetTaskPlatform(c)