Commit 273ae93
committed
gh-152957: Raise ValueError for invalid <date> in plistlib
_date_from_string did _dateParser.match(s).groupdict(). On a non-matching
value match() returns None (AttributeError); on a partial match (the regex
allows year-only and year-month) too few fields reach datetime.datetime(*lst)
(TypeError). Both now raise ValueError, matching the sibling <integer> and
<real> elements. The binary plist format decodes dates with struct.unpack and
is unaffected.1 parent 0a13efc commit 273ae93
3 files changed
Lines changed: 19 additions & 4 deletions
File tree
- Lib
- test
- Misc/NEWS.d/next/Library
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
142 | | - | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
143 | 146 | | |
144 | 147 | | |
145 | 148 | | |
146 | 149 | | |
147 | 150 | | |
148 | 151 | | |
149 | | - | |
150 | | - | |
151 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
152 | 158 | | |
153 | 159 | | |
154 | 160 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
876 | 876 | | |
877 | 877 | | |
878 | 878 | | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
879 | 886 | | |
880 | 887 | | |
881 | 888 | | |
| |||
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
0 commit comments