Skip to content

Commit daf92ba

Browse files
authored
Merge pull request #64 from realPy/master
Add 4 bytes padding to avoid crash on 32 bit system with misalign struct
2 parents ac4b801 + 489eff7 commit daf92ba

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

uaparser/parser.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ type RegexesDefinitions struct {
1616
UA []*uaParser `yaml:"user_agent_parsers"`
1717
OS []*osParser `yaml:"os_parsers"`
1818
Device []*deviceParser `yaml:"device_parsers"`
19+
_ [4]byte // padding for alignment
1920
sync.RWMutex
21+
2022
}
2123

2224
type UserAgentSorter []*uaParser
@@ -32,6 +34,7 @@ type uaParser struct {
3234
V1Replacement string `yaml:"v1_replacement"`
3335
V2Replacement string `yaml:"v2_replacement"`
3436
V3Replacement string `yaml:"v3_replacement"`
37+
_ [4]byte // padding for alignment
3538
MatchesCount uint64
3639
}
3740

@@ -64,6 +67,7 @@ type osParser struct {
6467
V2Replacement string `yaml:"os_v2_replacement"`
6568
V3Replacement string `yaml:"os_v3_replacement"`
6669
V4Replacement string `yaml:"os_v4_replacement"`
70+
_ [4]byte // padding for alignment
6771
MatchesCount uint64
6872
}
6973

@@ -97,6 +101,7 @@ type deviceParser struct {
97101
DeviceReplacement string `yaml:"device_replacement"`
98102
BrandReplacement string `yaml:"brand_replacement"`
99103
ModelReplacement string `yaml:"model_replacement"`
104+
_ [4]byte // padding for alignment
100105
MatchesCount uint64
101106
}
102107

0 commit comments

Comments
 (0)