diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2022-10-19 09:57:27 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-19 09:57:27 (GMT) |
commit | 30b9c4d7842d97abbc49d57e031671d60704723b (patch) | |
tree | ff6509ccda25c8cfd538ed248d9ea55646adbcb2 | |
parent | a847255cbbe5e52b871c0746ebafa07a00a335f4 (diff) | |
download | cpython-30b9c4d7842d97abbc49d57e031671d60704723b.zip cpython-30b9c4d7842d97abbc49d57e031671d60704723b.tar.gz cpython-30b9c4d7842d97abbc49d57e031671d60704723b.tar.bz2 |
gh-97928: Fix handling options starting with "-" in tkinter.Text.count() (GH-98436)
Previously they were silently ignored. Now they are errors.
(cherry picked from commit e4ec8de6fa6f0a07e64f6a3e3f894926b4b0652d)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
-rw-r--r-- | Lib/tkinter/__init__.py | 2 | ||||
-rw-r--r-- | Lib/tkinter/test/test_tkinter/test_text.py | 4 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Library/2022-10-19-09-29-12.gh-issue-97928.xj3im7.rst | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py index 3564469..a8e7bf4 100644 --- a/Lib/tkinter/__init__.py +++ b/Lib/tkinter/__init__.py @@ -3648,7 +3648,7 @@ class Text(Widget, XView, YView): "lines", "xpixels" and "ypixels". There is an additional possible option "update", which if given then all subsequent options ensure that any possible out of date information is recalculated.""" - args = ['-%s' % arg for arg in args if not arg.startswith('-')] + args = ['-%s' % arg for arg in args] args += [index1, index2] res = self.tk.call(self._w, 'count', *args) or None if res is not None and len(args) <= 3: diff --git a/Lib/tkinter/test/test_tkinter/test_text.py b/Lib/tkinter/test/test_tkinter/test_text.py index f0b101b..ea55758 100644 --- a/Lib/tkinter/test/test_tkinter/test_text.py +++ b/Lib/tkinter/test/test_tkinter/test_text.py @@ -76,9 +76,7 @@ class TextTest(AbstractTkTest, unittest.TestCase): self.assertEqual(text.count('1.0', 'end'), (124,) # 'indices' by default if self.wantobjects else ('124',)) self.assertRaises(tkinter.TclError, text.count, '1.0', 'end', 'spam') - # '-lines' is ignored, 'indices' is used by default - self.assertEqual(text.count('1.0', 'end', '-lines'), (124,) - if self.wantobjects else ('124',)) + self.assertRaises(tkinter.TclError, text.count, '1.0', 'end', '-lines') self.assertIsInstance(text.count('1.3', '1.5', 'ypixels'), tuple) self.assertIsInstance(text.count('1.3', '1.5', 'update', 'ypixels'), int diff --git a/Misc/NEWS.d/next/Library/2022-10-19-09-29-12.gh-issue-97928.xj3im7.rst b/Misc/NEWS.d/next/Library/2022-10-19-09-29-12.gh-issue-97928.xj3im7.rst new file mode 100644 index 0000000..cf33db7 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2022-10-19-09-29-12.gh-issue-97928.xj3im7.rst @@ -0,0 +1,2 @@ +:meth:`tkinter.Text.count` raises now an exception for options starting with +"-" instead of silently ignoring them. |