From 3ac524b657eecc8eb0c18cd6d705e84fb8bb6b59 Mon Sep 17 00:00:00 2001 From: Thomas LAY Date: Tue, 5 May 2020 16:11:16 +0200 Subject: [PATCH] Fix GetVersion --- decode.go | 7 ++++++- decode_test.go | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/decode.go b/decode.go index 587b6c6..25f4fbb 100644 --- a/decode.go +++ b/decode.go @@ -18,7 +18,12 @@ func GetVersion(s string) (version TcfVersion, err error) { } }() - b, err := base64.RawURLEncoding.DecodeString(s) + segments := strings.Split(s, ".") + if len(segments) == 0 { + return TcfVersionUndefined, err + } + + b, err := base64.RawURLEncoding.DecodeString(segments[0]) if err != nil { return TcfVersionUndefined, err } diff --git a/decode_test.go b/decode_test.go index 99d34dd..5e15498 100644 --- a/decode_test.go +++ b/decode_test.go @@ -15,7 +15,7 @@ func TestGetVersion(t *testing.T) { t.Errorf("Version should be %d", TcfVersion1) } - version, err = GetVersion("COxR03kOxR1CqBcABCENAgCMAP_AAH_AAAqIF3EXySoGY2thI2YVFxBEIYwfJxyigMgChgQIsSwNQIeFLBoGLiAAHBGYJAQAGBAEEACBAQIkHGBMCQAAgAgBiRCMQEGMCzNIBIBAggEbY0FACCVmHkHSmZCY7064O__QLuIJEFQMAkSBAIACLECIQwAQDiAAAYAlAAABAhIaAAgIWBQEeAAAACAwAAgAAABBAAACAAQAAICIAAABAAAgAiAQAAAAGgIQAACBABACRIAAAEANCAAgiCEAQg4EAo4AAA") + version, err = GetVersion("COy7f9HOy7f_1BcABBENAjCoAPKAAFKAAAqIDaQCQABAAVAAyACAAFoANQAkgEdANoA2kAYAAQAFQAMgAgABaAbQAUMAQAAEABUADIAIAAWgBJgDCAMQA9ACEAEdAKuAXUAwIBhADRAG0FAEQABAAVAAyACAAFoANQAkwBhAGIAegBCACOgFXALqAYEAwgBogDaDACIAAgAKgAZABAAC0AGoASYAwgDEAPQAhABHQCrgF1AMCAYQA0QBtCABEAAQAFQAMgAgABaADUAJMAYQBiAHoAQgAjoBVwC6gGBAMIAaIA2hQAiAAIACoAGQAQAAtABqAEmAMIAxAD0AIQAR0Aq4BdQDAgGEANEAbQA.cAAACAAAAUg") if err != nil { t.Errorf("Version should be decoded without error: %s", err) return