Commit Graph

223 Commits

Author SHA1 Message Date
Serhiy Storchaka 656ffdb4de 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-21 21:17:33 +03:00
Serhiy Storchaka 02d0298f41 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 f29bc70bff Issue #15133: _tkinter.tkapp.getboolean() now supports long and Tcl_Obj and
always returns bool.  tkinter.BooleanVar now validates input values (accepted
bool, int, long, str, unicode, and Tcl_Obj).  tkinter.BooleanVar.get() now
always returns bool.
2015-04-04 12:42:25 +03:00
Serhiy Storchaka c77c5b5f03 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:30 +03:00
Serhiy Storchaka cba6b5d045 Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. 2015-04-02 10:35:57 +03:00
Serhiy Storchaka 17c01785ee 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:56:59 +03:00
Serhiy Storchaka 1c09c0ea11 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:08 +03:00
Serhiy Storchaka 04fa704161 Issue #21580: Now Tkinter correctly handles binary "data" and "maskdata"
configure options of tkinter.PhotoImage.

Added private Tkapp method _createbytearray().
2014-07-31 07:48:14 +03:00
Serhiy Storchaka 5d93f408d8 Call PyErr_NoMemory() when PyMem_Malloc() fails. 2014-07-14 12:20:01 +03:00
Serhiy Storchaka 529a639669 Fixed possible integer overflow in getint, getdouble and getboolean too (issue #21552). 2014-05-30 14:28:21 +03:00
Serhiy Storchaka 2a0220b18a Issue #21552: Fixed possible integer overflow of too long string lengths in
the Tkinter module on 64-bit platforms.
2014-05-30 14:23:52 +03:00
Serhiy Storchaka ccffb25c54 Issue #20368: The null character now correctly passed from Tcl to Python (in
unicode strings only).  Improved error handling in variables-related commands.
2014-02-03 21:23:46 +02:00
Victor Stinner 930c3c9e43 Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit, don't cast
64-bit pointer to long (32 bits).
2013-09-05 00:26:15 +02:00
Serhiy Storchaka 2ac1c1a31d 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:45 +03:00
Serhiy Storchaka 4203570d01 Issue #17119: Fixed integer overflows when processing large Unicode strings
and tuples in the tkinter module.
2013-08-21 21:46:12 +03:00
Serhiy Storchaka fab65428d5 Issue #18101: Tcl.split() now process Unicode strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and tcl.splitline().
2013-07-11 20:32:48 +03:00
Serhiy Storchaka 4676448941 Issue #13153: Tkinter functions now raise TclError instead of ValueError when
a unicode argument contains non-BMP character.
2013-02-18 13:00:08 +02:00
Antoine Pitrou 44b3b5457a Remove all other uses of the C tolower()/toupper() which could break with a Turkish locale.
(except in the strop module, which is deprecated anyway)
2011-10-04 13:55:37 +02:00
Antoine Pitrou c83ea137d7 Untabify C files. Will watch buildbots. 2010-05-09 14:46:46 +00:00
Brett Cannon 99ac9147cb Remove an unused variable.
Found using Clang's static analyzer.
2010-05-03 23:41:51 +00:00
Guilherme Polo 5d64c330dd Include tkinter.h only after including tk.h (or the equivalent for another platform). 2009-04-05 02:11:19 +00:00
Guilherme Polo 41eb08616c Typo fix 2009-03-28 19:17:16 +00:00
Guilherme Polo 1972d16230 Adjusted _tkinter to compile without warnings when WITH_THREAD is not
defined (part of issue #5035)
2009-03-27 21:43:08 +00:00
Guilherme Polo 3768b2f4ce 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:47:49 +00:00
Guilherme Polo c5eba1e4f7 Enforcing Tk 8.3.1 requirement. 2009-02-09 20:57:45 +00:00
Guilherme Polo a66cf5bd04 Fixed issue #5122: Synchronize tk load failure check to prevent a
potential deadlock.
2009-02-09 20:50:27 +00:00
Guilherme Polo 363161a418 Issue #1731706: Call Tcl_ConditionFinalize for Tcl_Conditions that will
not be used again (this requires Tcl/Tk 8.3.1), also fix a memory
leak in Tkapp_Call when calling from a thread different than the one that
created the Tcl interpreter.
2009-02-06 22:48:07 +00:00
Guilherme Polo 14ff18d211 Partial fix to issue #1731706: memory leak in Tkapp_Call when calling
from a thread different than the one that created the Tcl interpreter.
2009-02-06 22:26:22 +00:00
Guilherme Polo 23fe2a867b Fix for issue #1581476 2009-02-02 21:08:32 +00:00
Benjamin Peterson b3619be995 make _tkinter._flatten check the result of PySequence_Size for errors #3880 2009-01-30 02:24:39 +00:00
Guilherme Polo e7f140355b The _tkinter module functions "createfilehandler", "deletefilehandler",
"createtimerhandler", "mainloop", "dooneevent" and "quit" have been
deprecated for removal in 3.x (part of issue #3638).
2009-01-03 21:51:09 +00:00
Martin v. Löwis 111c180674 Make more symbols static. 2008-06-13 07:47:47 +00:00
Gregory P. Smith dd96db63f6 This reverts r63675 based on the discussion in this thread:
http://mail.python.org/pipermail/python-dev/2008-June/079988.html

Python 2.6 should stick with PyString_* in its codebase.  The PyBytes_* names
in the spirit of 3.0 are available via a #define only.  See the email thread.
2008-06-09 04:58:54 +00:00
Christian Heimes 593daf545b Renamed PyString to PyBytes 2008-05-26 12:51:38 +00:00
Guido van Rossum 076d9eef7b Bug #1301: fixed a bad assert in _tkinter. 2008-01-03 23:54:04 +00:00
Martin v. Löwis 17cb5cf403 Return results from Python callbacks to Tcl as Tcl objects.
Fixes Tk issue #1851526
2008-01-01 21:05:17 +00:00
Christian Heimes e93237dfcc #1629: Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT. Macros for b/w compatibility are available. 2007-12-19 02:37:44 +00:00
Guido van Rossum b5e81aa53e Backport r56875 from py3k; double LEAVE_PYTHON when AsString() fails
in PythonCmd().
2007-08-09 21:47:11 +00:00
Martin v. Löwis 6819210b9e PEP 3123: Provide forward compatibility with Python 3.0, while keeping
backwards compatibility. Add Py_Refcnt, Py_Type, Py_Size, and
PyVarObject_HEAD_INIT.
2007-07-21 06:55:02 +00:00
Kurt B. Kaiser d67a3b9503 Many calls to tk.call involve an arglist containing a single tuple.
Calls using METH_OLDARGS unpack this tuple; calls using METH_VARARG
don't.  Tcl's concatenation of args was affected; IDLE doesn't start.

Modify Tkapp_Call() to unpack single tuple arglists.

Bug 1733943
Ref http://mail.python.org/pipermail/python-checkins/2007-May/060454.html
2007-07-05 22:03:39 +00:00
Neal Norwitz e2e447b6fb Stop using METH_OLDARGS 2007-05-22 07:16:10 +00:00
Neal Norwitz 5f17d9a1df Don't deref v if it's NULL.
Klocwork #214
2006-08-12 02:33:36 +00:00
Neal Norwitz ce5b3c3188 self is dereffed (and passed as first arg), so it's known to be good.
func is returned from PyArg_ParseTuple and also dereffed.

Reported by Klocwork, #30 (self one at least).
2006-07-16 02:02:57 +00:00
Neal Norwitz 047f3c7ffa Fix some Py_ssize_t issues 2006-06-12 02:06:42 +00:00
Andrew M. Kuchling 36f6d77931 [Bug #1497414] _self is a reserved word in the WATCOM 10.6 C compiler.
Fix by renaming the variable.

In a different module, Neal fixed it by renaming _self to self.  There's
already a variable named 'self' here, so I used selfptr.

(I'm committing this on a Mac without Tk, but it's a simple search-and-replace.
<crosses fingers>, so  I'll watch the buildbots and see what happens.)
2006-06-03 19:02:35 +00:00
Martin v. Löwis 8672519ac0 Work around deadlock risk. Will backport. 2006-05-01 06:28:01 +00:00
Neal Norwitz 65c05b20e9 Get rid of warnings about using chars as subscripts
on Alpha (and possibly other platforms) by using Py_CHARMASK().
2006-04-10 02:17:47 +00:00
Thomas Wouters a74a84d4cb Coverity found refleak: need to free 'v' after calling Tkinter_Error().
Will backport to release24.
2006-03-07 14:04:31 +00:00
Martin v. Löwis 1d519e4625 unconst. 2006-02-27 23:10:11 +00:00
Neal Norwitz 1ac754fa10 Check return result from Py_InitModule*(). This API can fail.
Probably should be backported.
2006-01-19 06:09:39 +00:00