Commit Graph

368 Commits

Author SHA1 Message Date
Serhiy Storchaka 696c8af41f Use macros instead of corresponding functions (they never fail) in _tkinter.c. 2016-06-19 11:22:47 +03:00
Serhiy Storchaka dea76376cb Issue #23815: Fixed crashes related to directly created instances of types in
_tkinter and curses.panel modules.
2016-05-08 20:46:55 +03:00
Serhiy Storchaka e3f1b0911e Issue #23815: Fixed crashes related to directly created instances of types in
_tkinter and curses.panel modules.
2016-05-08 20:46:22 +03:00
Serhiy Storchaka 7a9579c0ce Got rid of redundand "self" parameter declarations.
Argument Clinic is now able to infer all needed information.
2016-05-02 13:45:20 +03:00
Serhiy Storchaka ef1585eb9a Issue #25923: Added more const qualifiers to signatures of static and private functions. 2015-12-25 20:01:53 +02:00
Zachary Ware 7dc9dea778 Issue #20035: Reimplement tkinter._fix module as a C function.
The new private C function makes no permanent changes to the environment
and is #ifdef'd out on non-Windows platforms.
2015-05-22 11:36:53 -05:00
Serhiy Storchaka 8d0f620285 Use specialized functions intead of Py_BuildValue() in _tkinter. 2015-05-06 14:19:22 +03:00
Serhiy Storchaka 645058d11a Issue #23880: Tkinter's getint() and getdouble() now support Tcl_Obj.
Tkinter's getdouble() now supports any numbers (in particular int).
2015-05-06 14:00:04 +03:00
Larry Hastings dbfdc380df Issue #24001: Argument Clinic converters now use accept={type}
instead of types={'type'} to specify the types the converter accepts.
2015-05-04 06:59:46 -07:00
Larry Hastings 2d0a69a456 Fix Windows build breakage from checkins on Issues #20148 and #20168. 2015-05-03 14:49:19 -07:00
Serhiy Storchaka 5abdf48430 Issue #20168: Converted the _tkinter module to Argument Clinic. 2015-05-03 15:49:47 +03:00
Serhiy Storchaka 71b49dde3a Issue #16840. Turn off bignum support in tkinter with with Tcl earlier than 8.5.8
(tclTomMath.h was broken) and non-final Tcl 8.6.
Removed TK_VERSION_HEX.
2015-04-22 10:59:32 +03:00
Serhiy Storchaka 3af7a38c61 Issue #16840. Turn off bignum support in tkinter with with Tcl earlier than 8.5.8
(tclTomMath.h was broken) and non-final Tcl 8.6.
2015-04-22 10:53:08 +03:00
Serhiy Storchaka 629d697f96 Issue #16840: Turn on support of bignums only in final release of Tcl 8.5. 2015-04-20 14:07:41 +03:00
Serhiy Storchaka 77e8311deb Issue #16840: Turn on support of bignums only in final release of Tcl 8.5. 2015-04-20 14:05:37 +03:00
Serhiy Storchaka 06e66108c6 Issue #15133: _tkinter.tkapp.getboolean() now supports Tcl_Obj and always
returns bool.  tkinter.BooleanVar now validates input values (accepted bool,
int, str, and Tcl_Obj).  tkinter.BooleanVar.get() now always returns bool.
2015-04-04 12:44:30 +03:00
Serhiy Storchaka 9a6e201f7d Issue #15133: _tkinter.tkapp.getboolean() now supports Tcl_Obj and always
returns bool.  tkinter.BooleanVar now validates input values (accepted bool,
int, str, and Tcl_Obj).  tkinter.BooleanVar.get() now always returns bool.
2015-04-04 12:43:01 +03:00
Serhiy Storchaka 4c7dc48ea5 Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and
arbitrary precision integers added in Tcl 8.5.
2015-04-02 18:49:14 +03:00
Serhiy Storchaka ea134da929 Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and
arbitrary precision integers added in Tcl 8.5.
2015-04-02 18:46:50 +03:00
Serhiy Storchaka b452f41cc8 Issue #21526: Fixed support of new boolean type in Tcl 8.5. 2015-04-02 10:58:40 +03:00
Serhiy Storchaka f7de3dd02d Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. 2015-04-02 10:35:57 +03:00
Serhiy Storchaka f07a4b663d Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. 2015-03-23 00:47:45 +02:00
Serhiy Storchaka 50adb9fc32 Issue #20204: Added the __module__ attribute to _tkinter classes. 2015-03-01 09:07:10 +02:00
Serhiy Storchaka efdc16f978 Issue #20204: Added the __module__ attribute to _tkinter classes. 2015-03-01 09:06:29 +02:00
Serhiy Storchaka 3584056ca5 Shoould be Py_MIN, not Py_MAX. 2015-02-16 20:54:03 +02:00
Serhiy Storchaka 26861b0b29 Issue #23450: Fixed possible integer overflows. 2015-02-16 20:52:17 +02:00
Victor Stinner ee6c3c7162 Closes #22336: attemptckalloc() with PyMem_Malloc() in _tkinter
The PyMem_Malloc(size) function has a well defined behaviour: if size is 0, a
pointer different than NULL is returned. PyMem_Malloc() allocations are
tracked by tracemalloc, attemptckalloc() allocations are not tracked.
2014-09-11 17:50:21 +02:00
Serhiy Storchaka d5fd6188e2 Issue #21951: Fixed a crash in Tkinter on AIX when called Tcl command with
empty string or tuple argument.

On some platforms Tcl memory allocator returns NULL when allocating zero-sized
block of memory.
2014-09-11 10:58:02 +03:00
Serhiy Storchaka abf68ce164 Issue #21951: Fixed a crash in Tkinter on AIX when called Tcl command with
empty string or tuple argument.

On some platforms Tcl memory allocator returns NULL when allocating zero-sized
block of memory.
2014-09-11 10:57:13 +03:00
Serhiy Storchaka 979f80b8da Issue #21951: Use attemptckalloc() instead of ckalloc() in Tkinter.
ckalloc() causes the Tcl interpreter to panic, attemptckalloc() returns NULL
if the memory allocation fails.
2014-09-11 10:40:44 +03:00
Serhiy Storchaka 0794088379 Issue #21951: Use attemptckalloc() instead of ckalloc() in Tkinter.
ckalloc() causes the Tcl interpreter to panic, attemptckalloc() returns NULL
if the memory allocation fails.
2014-09-11 10:38:54 +03:00
Serhiy Storchaka d8a1447c99 Issue #22215: Now ValueError is raised instead of TypeError when str or bytes
argument contains not permitted null character or byte.
2014-09-06 20:07:17 +03:00
Victor Stinner 60a64d6812 Issue #21951: Fix AsObj() of the _tkinter module: raise MemoryError on memory
allocation failure
2014-09-04 17:29:52 +02:00
Victor Stinner 706768c687 Issue #22156: Fix some "comparison between signed and unsigned integers"
compiler warnings in the Modules/ subdirectory.
2014-08-16 01:03:39 +02:00
Zachary Ware 037605b50e Closes #22136: Fix MSVC compiler warnings introduced by #22085 2014-08-05 11:54:34 -05:00
Serhiy Storchaka 6716d60cec Issue #22085: Dropped support of Tk 8.3 in Tkinter. 2014-07-30 19:19:21 +03:00
Serhiy Storchaka f44611cadf Issue #21580: Now Tkinter correctly handles bytes arguments passed to Tk.
In particular this allows to initialize images from binary data.
2014-07-30 18:34:01 +03:00
Serhiy Storchaka 74596a887a Issue #21580: Now Tkinter correctly handles bytes arguments passed to Tk.
In particular this allows to initialize images from binary data.
2014-07-30 18:33:13 +03:00
Serhiy Storchaka 56ded52fa8 Call PyErr_NoMemory() when PyMem_Malloc() fails. 2014-07-14 12:20:49 +03:00
Serhiy Storchaka b1ebfdddb3 Call PyErr_NoMemory() when PyMem_Malloc() fails. 2014-07-14 12:20:15 +03:00
Serhiy Storchaka 1753d2255e Issue #21552: Fixed possible integer overflow of too long string lengths in
the tkinter module on 64-bit platforms.
2014-05-30 14:25:22 +03:00
Serhiy Storchaka 79851d755b Issue #21552: Fixed possible integer overflow of too long string lengths in
the tkinter module on 64-bit platforms.
2014-05-30 14:24:03 +03:00
Serhiy Storchaka 9e7cbda1ef Issue #3015: _tkinter.create() now creates tkapp object with wantobject=1 by
default.
2014-05-28 16:57:55 +03:00
Serhiy Storchaka 2b00c4999d Issue #21525: Most Tkinter methods which accepted tuples now accept lists too. 2014-05-21 17:12:21 +03:00
Christian Heimes 25ff287dd7 Issue #20515: Fix NULL pointer dereference introduced by issue #20368
CID 1167595
2014-02-05 00:29:48 +01:00
Christian Heimes d33491ea76 Issue #20515: Fix NULL pointer dereference introduced by issue #20368
CID 1167595
2014-02-05 00:29:17 +01:00
Serhiy Storchaka ce591c2868 Issue #20368: The null character now correctly passed from Tcl to Python.
Improved error handling in variables-related commands.
2014-02-03 21:25:56 +02:00
Serhiy Storchaka 1317e14468 Issue #20368: The null character now correctly passed from Tcl to Python.
Improved error handling in variables-related commands.
2014-02-03 21:24:07 +02:00
Serhiy Storchaka ab0ac27d24 Issue #20315: Removed support for backward compatibility with early 2.x versions.
Removed backward compatibility alias curses.window.nooutrefresh which should
be removed in 2.3.
2014-01-20 21:35:06 +02:00
Serhiy Storchaka 7e52705ee3 Issue #20315: Removed support for backward compatibility with early 2.x versions. 2014-01-20 21:29:31 +02:00
Serhiy Storchaka 369606df2f Issue #19028: Fixed tkinter.Tkapp.merge() for non-string arguments. 2013-09-23 23:20:07 +03:00
Serhiy Storchaka 463bd4b5c6 Issue #19034: repr() for tkinter.Tcl_Obj now exposes string reperesentation. 2013-09-23 22:49:02 +03:00
Serhiy Storchaka dac8b8b7a6 Issue #3015: Fixed tkinter with wantobject=False. Any Tcl command call
returned empty string.
2013-09-20 23:24:20 +03:00
Serhiy Storchaka 31f477c7eb Issue #3015: Fixed tkinter with wantobject=False. Any Tcl command call
returned empty string.
2013-09-20 23:21:44 +03:00
Victor Stinner 555e57de19 (Merge 3.3) Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit,
don't cast 64-bit pointer to long (32 bits).
2013-09-05 00:23:08 +02:00
Victor Stinner e1040e276b Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit, don't cast
64-bit pointer to long (32 bits).
2013-09-05 00:22:24 +02:00
Serhiy Storchaka 254954aacd Issue #16809: Tkinter's splitlist() and split() methods now accept Tcl_Obj
argument.

This is needed for support Tcl/Tk 8.6.
2013-08-22 17:42:05 +03:00
Serhiy Storchaka 203eb317d2 Issue #16809: Tkinter's splitlist() and split() methods now accept Tcl_Obj
argument.

This is needed for support Tcl/Tk 8.6.
2013-08-22 17:40:31 +03:00
Serhiy Storchaka 4e4088d273 Issue #17119: Fixed integer overflows when processing large strings and tuples
in the tkinter module.
2013-08-21 21:43:08 +03:00
Serhiy Storchaka 9e6b97502f Issue #17119: Fixed integer overflows when processing large strings and tuples
in the tkinter module.
2013-08-21 21:38:21 +03:00
Antoine Pitrou 584e815114 Fix refcounting issue with extension types in tkinter.
(issue #15721)
2013-08-11 00:22:30 +02:00
Serhiy Storchaka 50ae3f680b Issue #18101: Tcl.split() now process strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and Tcl.splitline().
2013-07-11 20:36:00 +03:00
Serhiy Storchaka 275d5fdbe4 Issue #18101: Tcl.split() now process strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and Tcl.splitline().
2013-07-11 20:34:47 +03:00
Serhiy Storchaka 2cca36ed3c Issue #13153: Tkinter functions now raise TclError instead of ValueError when
a string argument contains non-BMP character.
2013-02-18 13:03:07 +02:00
Serhiy Storchaka df4aa642a5 Issue #13153: Tkinter functions now raise TclError instead of ValueError when
a string argument contains non-BMP character.
2013-02-18 13:02:41 +02:00
Serhiy Storchaka 59f5dee3d6 Issue #13153: Tkinter functions now raise TclError instead of ValueError when
a string argument contains non-BMP character.
2013-02-18 13:01:52 +02:00
Andrew Svetlov d2217a83d4 Issue #15721: apply PEP 384 Refactoring to tkinter module. 2012-10-30 22:49:16 +02:00
Andrew Svetlov d0ad0b3ae2 Reformat _tkinter code to follow PEP7 2012-10-16 22:50:34 +03:00
Andrew Svetlov 11dc6c311d Issue #15721: make _tkinter module pep384 compatible. 2012-10-14 16:54:35 +03:00
Andrew Svetlov 09c61bef2d Remove unused functions from _tkinter. 2012-10-07 13:39:00 +03:00
Andrew Svetlov 885dc287d3 Utilize PyModule_Add{IntConstant,StringConstant,Object} in _tkinter. 2012-10-07 12:30:51 +03:00
Andrew Svetlov 9dc5bdddc0 Utilize Py_RETURN_NONE in _tkinter module. 2012-10-07 12:08:38 +03:00
Jesus Cea 6efe9dff14 Issue #14446: Remove deprecated tkinter functions: Delete an unused function to avoid a warning 2012-10-05 04:02:41 +02:00
Jesus Cea bf0f34421c Issue #14446: Remove deprecated tkinter functions: Delete an unused function to avoid a warning 2012-10-05 03:57:56 +02:00
Andrew Svetlov 456b2b8777 Issue #14446: Remove deprecated tkinter functions
Thanks to  Michael Driscoll
2012-10-04 22:10:09 +03:00
Andrew Svetlov 80823d7ed7 #15094: fix incorrectly placed #endif in _tkinter.c.
Patch by Serhiy Storchaka.
2012-07-22 13:56:54 +03:00
Jesus Cea 3cd346ae33 MERGE: Closes #15396: memory leak in tkinter 2012-07-19 21:18:45 +02:00
Jesus Cea ef86d12979 Closes #15396: memory leak in tkinter 2012-07-19 21:18:07 +02:00
Andrew Svetlov 9e892bbf28 fix issue #5136: deprecate old unused functions from tkinter.
These functions are not documnted, so no documentation update.
2012-03-31 19:36:39 +03:00
Andrew Svetlov c5ceb0aaaf Revert the patch for issue 3835 because failed on Windows buildbot
Windows build is compiled with no-threaded tcl/tk by default
2012-03-14 09:39:36 -07:00
Martin v. Löwis df50cebbed Issue #3835: Refuse to use unthreaded Tcl in threaded Python.
Patch by Guilherme Polo and Andrew Svetlov.
2012-03-13 13:59:15 -07:00
Victor Stinner 3d7acb08c4 Issue #12342: Fix compilation on Mac OS X 2011-11-04 09:49:24 +01:00
Victor Stinner 6777e6f9b1 (Merge 3.2) Issue #12342: Improve _tkinter error message on unencodable character 2011-11-04 00:43:35 +01:00
Victor Stinner 7ab4192e82 Issue #12342: Improve _tkinter error message on unencodable character 2011-11-04 00:36:46 +01:00
Antoine Pitrou ed8ba14441 Remove all other uses of the C tolower()/toupper() which could break with a Turkish locale. 2011-10-04 13:50:21 +02:00
Antoine Pitrou 061fe34262 Remove all other uses of the C tolower()/toupper() which could break with a Turkish locale. 2011-10-04 13:53:01 +02:00
Martin v. Löwis d63a3b8beb Implement PEP 393. 2011-09-28 07:41:54 +02:00
Kurt B. Kaiser 9dd41fa970 Merge from 3.2 2011-05-11 14:18:13 -04:00
Kurt B. Kaiser bc3e13818b Merge from 3.1 2011-05-11 13:48:54 -04:00
Kurt B. Kaiser e147806da9 Issue #1028: Tk returns invalid Unicode null in %A: UnicodeDecodeError.
With Tk < 8.5 _tkinter.c:PythonCmd() raised UnicodeDecodeError, caused IDLE to
exit.  Converted to valid Unicode null in PythonCmd().
2011-05-11 12:24:17 -04:00
Victor Stinner 6ced7c4333 Issue #10833: Use PyErr_Format() and PyUnicode_FromFormat() instead of
PyOS_snprintf() to avoid temporary buffer allocated on the stack and a
conversion from bytes to Unicode.
2011-03-21 18:15:42 +01:00
Brett Cannon b94767ff44 Issue #8914: fix various warnings from the Clang static analyzer v254. 2011-02-22 20:15:44 +00:00
Victor Stinner ae6265f8d0 Issue #8715: Create PyUnicode_EncodeFSDefault() function: Encode a Unicode
object to Py_FileSystemDefaultEncoding with the "surrogateescape" error
handler, return a bytes object. If Py_FileSystemDefaultEncoding is not set,
fall back to UTF-8.
2010-05-15 16:27:27 +00:00
Antoine Pitrou 7f14f0d8a0 Recorded merge of revisions 81032 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81032 | antoine.pitrou | 2010-05-09 17:52:27 +0200 (dim., 09 mai 2010) | 9 lines

  Recorded merge of revisions 81029 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines

    Untabify C files. Will watch buildbots.
  ........
................
2010-05-09 16:14:21 +00:00
Antoine Pitrou f95a1b3c53 Recorded merge of revisions 81029 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines

  Untabify C files. Will watch buildbots.
........
2010-05-09 15:52:27 +00:00
Guilherme Polo 2d87e42921 Merged revisions 71210 via svnmerge from
svn+ssh://pythondev/python/trunk

........
  r71210 | guilherme.polo | 2009-04-04 23:11:19 -0300 (Sat, 04 Apr 2009) | 1 line

  Include tkinter.h only after including tk.h (or the equivalent for another platform).
........
2009-04-10 22:19:09 +00:00
Alexandre Vassalotti 2145595f74 Initialize the tk_init_failed static variable to 0. 2009-04-05 01:30:02 +00:00
Benjamin Peterson 5879d4122a Merged revisions 70578,70599,70641-70642,70650,70660-70661,70674,70691,70697-70698,70700,70704 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r70578 | benjamin.peterson | 2009-03-23 22:24:56 -0500 (Mon, 23 Mar 2009) | 1 line

  this is better written using assertRaises
........
  r70599 | benjamin.peterson | 2009-03-25 16:42:51 -0500 (Wed, 25 Mar 2009) | 1 line

  this can be slightly less ugly
........
  r70641 | guilherme.polo | 2009-03-27 16:43:08 -0500 (Fri, 27 Mar 2009) | 3 lines

  Adjusted _tkinter to compile without warnings when WITH_THREAD is not
  defined (part of issue #5035)
........
  r70642 | georg.brandl | 2009-03-27 19:48:48 -0500 (Fri, 27 Mar 2009) | 1 line

  Fix typo.
........
  r70650 | benjamin.peterson | 2009-03-28 14:16:10 -0500 (Sat, 28 Mar 2009) | 1 line

  give os.symlink and os.link() better parameter names #5564
........
  r70660 | georg.brandl | 2009-03-28 14:52:58 -0500 (Sat, 28 Mar 2009) | 1 line

  Switch to fixed Sphinx version.
........
  r70661 | georg.brandl | 2009-03-28 14:57:36 -0500 (Sat, 28 Mar 2009) | 2 lines

  Add section numbering to some of the larger subdocuments.
........
  r70674 | guilherme.polo | 2009-03-29 05:19:05 -0500 (Sun, 29 Mar 2009) | 1 line

  Typo fix.
........
  r70691 | raymond.hettinger | 2009-03-29 13:51:11 -0500 (Sun, 29 Mar 2009) | 1 line

  Make life easier for non-CPython implementations.
........
  r70697 | benjamin.peterson | 2009-03-29 16:22:35 -0500 (Sun, 29 Mar 2009) | 1 line

  this has been fixed since 2.6 (I love removing these)
........
  r70698 | benjamin.peterson | 2009-03-29 16:31:05 -0500 (Sun, 29 Mar 2009) | 1 line

  thanks to guido's bytecode verifier, this is fixed
........
  r70700 | benjamin.peterson | 2009-03-29 16:50:14 -0500 (Sun, 29 Mar 2009) | 1 line

  use the awesome new status iterator
........
  r70704 | benjamin.peterson | 2009-03-29 21:49:32 -0500 (Sun, 29 Mar 2009) | 1 line

  there's actually three methods here #5600
........
2009-03-30 14:51:56 +00:00
Guilherme Polo 56f5be5317 Merged revisions 70218-70219 via svnmerge from
svn+ssh://pythondev/python/trunk

........
  r70218 | guilherme.polo | 2009-03-06 22:19:12 -0300 (Fri, 06 Mar 2009) | 1 line

  Fixed issue #5193: Guarantee that Tkinter.Text.search returns a string.
........
  r70219 | guilherme.polo | 2009-03-06 22:47:49 -0300 (Fri, 06 Mar 2009) | 4 lines

  Fixed issue #4792: Prevent a segfault in _tkinter by using the
  guaranteed to be safe interp argument given to the PythonCmd in place
  of the Tcl interpreter taken from a PythonCmd_ClientData.
........
2009-03-07 01:54:57 +00:00
Guilherme Polo 6691772ff6 Merged revisions 69474 via svnmerge from
svn+ssh://pythondev/python/trunk

........
  r69474 | guilherme.polo | 2009-02-09 18:57:45 -0200 (Mon, 09 Feb 2009) | 1 line

  Enforcing Tk 8.3.1 requirement.
........
2009-02-09 22:35:27 +00:00