From 1ff3345d13f9a4f0434d0431206fdac75c9c6338 Mon Sep 17 00:00:00 2001 From: Klimov Sergei Date: Mon, 15 Sep 2025 00:46:43 +0800 Subject: [PATCH] Update config.go --- beacon/params/config.go | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/beacon/params/config.go b/beacon/params/config.go index d42f852a81..0145bbec3b 100644 --- a/beacon/params/config.go +++ b/beacon/params/config.go @@ -108,18 +108,26 @@ func (c *ChainConfig) LoadForks(path string) error { for key, value := range config { if strings.HasSuffix(key, "_FORK_VERSION") { name := key[:len(key)-len("_FORK_VERSION")] - if v, err := hexutil.Decode(fmt.Sprintf("0x%x", value)); err == nil { + version, ok := value.(string) + if !ok { + version = fmt.Sprintf("0x%x", value) + } + if v, err := hexutil.Decode(version); err == nil { versions[name] = v } else { - return fmt.Errorf("failed to decode hex fork id %v in beacon chain config file: %v", value, err) + return fmt.Errorf("failed to decode hex fork id %q in beacon chain config file: %v", version, err) } } if strings.HasSuffix(key, "_FORK_EPOCH") { name := key[:len(key)-len("_FORK_EPOCH")] - if v, err := hexutil.DecodeUint64(fmt.Sprintf("0x%x", value)); err == nil { + version, ok := value.(string) + if !ok { + version = fmt.Sprintf("0x%x", value) + } + if v, err := hexutil.DecodeUint64(version); err == nil { epochs[name] = v } else { - return fmt.Errorf("failed to parse epoch number %v in beacon chain config file: %v", value, err) + return fmt.Errorf("failed to parse epoch number %q in beacon chain config file: %v", version, err) } } }