1. 13 Jul, 2000 1 commit
  2. 12 Jul, 2000 1 commit
  3. 10 Jul, 2000 1 commit
    • Peter Schneider-Kamp's avatar
      ANSI-fying · c5b09a39
      Peter Schneider-Kamp authored
      added excplicit node * parameter to termvalid argument in
      validate_two_chain_ops of parsermodule.c (as proposed by fred)
      c5b09a39
  4. 08 Jul, 2000 1 commit
  5. 30 Jun, 2000 2 commits
    • Guido van Rossum's avatar
      Change copyright notice. · 10b9cce3
      Guido van Rossum authored
      10b9cce3
    • Fred Drake's avatar
      Trent Mick <trentm@activestate.com>: · 7ea1f392
      Fred Drake authored
      The common technique for printing out a pointer has been to cast to a long
      and use the "%lx" printf modifier. This is incorrect on Win64 where casting
      to a long truncates the pointer. The "%p" formatter should be used instead.
      
      The problem as stated by Tim:
      > Unfortunately, the C committee refused to define what %p conversion "looks
      > like" -- they explicitly allowed it to be implementation-defined. Older
      > versions of Microsoft C even stuck a colon in the middle of the address (in
      > the days of segment+offset addressing)!
      
      The result is that the hex value of a pointer will maybe/maybe not have a 0x
      prepended to it.
      
      
      Notes on the patch:
      
      There are two main classes of changes:
      - in the various repr() functions that print out pointers
      - debugging printf's in the various thread_*.h files (these are why the
      patch is large)
      
      
      Closes SourceForge patch #100505.
      7ea1f392
  6. 19 Jun, 2000 1 commit
  7. 18 Jun, 2000 1 commit
    • Andrew M. Kuchling's avatar
      Patch from /F: · 06bdf0e1
      Andrew M. Kuchling authored
      this patch adds a fast _flatten function to the _tkinter
      module, and imports it from Tkinter.py (if available).
      
      this speeds up canvas operations like create_line and
      create_polygon.  for example, a create_line with 5000
      vertices runs about 50 times faster with this patch in
      place.
      06bdf0e1
  8. 04 May, 2000 2 commits
    • Guido van Rossum's avatar
      When the UTF-8 conversion to Unicode fails, return an 8-bit string · 76a59b37
      Guido van Rossum authored
      instead.  This seems more robust than returning an Unicode string with
      some unconverted charcters in it.
      
      This still doesn't support getting truly binary data out of Tcl, since
      we look for the trailing null byte; but the old (pre-Unicode) code did
      this too, so apparently there's no need.  (Plus, I really don't feel
      like finding out how Tcl deals with this in each version.)
      76a59b37
    • Guido van Rossum's avatar
      Two changes to improve (I hope) Unicode support. · afa13e07
      Guido van Rossum authored
      1. In Tcl 8.2 and later, use Tcl_NewUnicodeObj() when passing a Python
      Unicode object rather than going through UTF-8.  (This function
      doesn't exist in Tcl 8.1, so there the original UTF-8 code is still
      used; in Tcl 8.0 there is no support for Unicode.)  This assumes that
      Tcl_UniChar is the same thing as Py_UNICODE; a run-time error is
      issued if this is not the case.
      
      2. In Tcl 8.1 and later (i.e., whenever Tcl supports Unicode), when a
      string returned from Tcl contains bytes with the top bit set, we
      assume it is encoded in UTF-8, and decode it into a Unicode string
      object.
      
      Notes:
      
      - Passing Unicode strings to Tcl 8.0 does not do the right thing; this
      isn't worth fixing.
      
      - When passing an 8-bit string to Tcl 8.1 or later that has bytes with
      the top bit set, Tcl tries to interpret it as UTF-8; it seems to fall
      back on Latin-1 for non-UTF-8 bytes.  I'm not sure what to do about
      this besides telling the user to disambiguate such strings by
      converting them to Unicode (forcing the user to be explicit about the
      encoding).
      
      - Obviously it won't be possible to get binary data out of Tk this
      way.  Do we need that ability?  How to do it?
      afa13e07
  9. 03 May, 2000 1 commit
    • Guido van Rossum's avatar
      Vladimir Marangozov's long-awaited malloc restructuring. · 2ad49d47
      Guido van Rossum authored
      For more comments, read the patches@python.org archives.
      For documentation read the comments in mymalloc.h and objimpl.h.
      
      (This is not exactly what Vladimir posted to the patches list; I've
      made a few changes, and Vladimir sent me a fix in private email for a
      problem that only occurs in debug mode.  I'm also holding back on his
      change to main.c, which seems unnecessary to me.)
      2ad49d47
  10. 27 Apr, 2000 1 commit
  11. 31 Mar, 2000 2 commits
  12. 29 Mar, 2000 1 commit
    • Guido van Rossum's avatar
      The Tcl_Obj patch discussed on the patches list. · 6db31a70
      Guido van Rossum authored
      This was originally submitted by Martin von Loewis as part of his
      Unicode patch; all I did was add special cases for Python int and
      float objects and rearrange the object type tests somewhat to speed up
      the common cases (string, int, float, tuple, unicode, object).
      6db31a70
  13. 28 Mar, 2000 1 commit
  14. 27 Mar, 2000 1 commit
  15. 29 Feb, 2000 1 commit
  16. 05 Nov, 1999 1 commit
  17. 25 Jan, 1999 1 commit
  18. 21 Dec, 1998 1 commit
  19. 04 Dec, 1998 1 commit
  20. 17 Nov, 1998 1 commit
  21. 12 Oct, 1998 1 commit
  22. 09 Oct, 1998 1 commit
  23. 08 Oct, 1998 1 commit
  24. 01 Oct, 1998 1 commit
  25. 21 Sep, 1998 1 commit
  26. 13 Aug, 1998 1 commit
  27. 05 Aug, 1998 1 commit
  28. 14 Jul, 1998 1 commit
    • Guido van Rossum's avatar
      Temporarily get rid of the registration of Tcl_Finalize() as a · 696288a9
      Guido van Rossum authored
      low-level Python exit handler.  This can attempt to call Python code
      at a point that the interpreter and thread state have already been
      destroyed, causing a Bus Error.  Given the intended use of
      Py_AtExit(), I'm not convinced that it's a good idea to call it
      earlier during Python's finalization sequence...  (Although this is
      the only use for it in the entire distribution.)
      696288a9
  29. 07 Jul, 1998 1 commit
  30. 19 Jun, 1998 1 commit
  31. 15 Jun, 1998 2 commits
    • Guido van Rossum's avatar
      # Note: a previous checkin message was lost because I can now use CVS · f629ff7c
      Guido van Rossum authored
      # from my PC at home, but it can't send email :-(
      
      Add a clarifying comment about the new ENTER_OVERLAP and
      LEAVE_OVERLAP_TCL macros; get rid of all the bogus tests for deleted
      interpreters (Tcl already tests for this; they were left over from an
      earlier misguided attempt to fix the threading).
      f629ff7c
    • Guido van Rossum's avatar
      # (My first checkin from Windows NT using remote CVS!) · 0278695d
      Guido van Rossum authored
      There were some serious problem with the thread-safety code.
      The basic problem was that often the result was gotten out of
      the Tcl interpreter object after releasing the Tcl lock.
      Of course, another thread might have changed the return value
      already, and this was indeed happening.  (Amazing what trying
      it on a different thread implementation does!)
      
      The solution is to grab the Python lock without releasing the
      Tcl lock, so it's safe to create a string object or set the
      exceptions from the Tcl interpreter.  Once that's done, the
      Tcl lock is released.
      
      Note that it's now legal to acquire the Python lock while the
      the Tcl lock is held; but the reverse is not true: the Python
      lock must be released before the Tcl lock is acquired.  This
      in order to avoid deadlines.  Fortunately, there don't seem to
      be any problems with this.
      0278695d
  32. 13 Jun, 1998 1 commit
    • Guido van Rossum's avatar
      Fixed the EventHook() code so that it also works on Windows, sort of. · 2f20c249
      Guido van Rossum authored
      (The "sort of" is because it uses kbhit() to detect that the user
      starts typing, and then no events are processed until they hit
      return.)
      
      Also fixed a nasty locking bug: EventHook() is called without the Tcl
      lock set, so it can't use the ENTER_PYTHON and LEAVE_PYTHON macros,
      which manipulate both the Python and the Tcl lock.  I now only acquire
      and release the Python lock.
      
      (Haven't tested this on Unix yet...)
      2f20c249
  33. 29 May, 1998 1 commit
  34. 28 May, 1998 1 commit
    • Guido van Rossum's avatar
      Changes to make it possible to write multi-threaded programs using · f9434efe
      Guido van Rossum authored
      Tkinter.  This adds a separate lock -- read the comments.  (This was
      also needed for Mark Hammond's attempts to make PythonWin
      Tkinter-friendly.)
      
      The changes have affected the EventHook slightly, too; and I've done
      some more cleanup of the code that deals with the different versions
      of Tcl_CreateFileHandler().
      f9434efe
  35. 22 May, 1998 1 commit
    • Guido van Rossum's avatar
      Use a different implementation of EventHook(). The new version · b4c3efd8
      Guido van Rossum authored
      registers an input file handler for stdin with Tcl and handles Tcl
      events until something is available on stdin; it then deletes the
      handler and returns from EventHook().
      
      This works with or without GNU readline, and doesn't busy-wait.
      
      It still doesn't work for Mac or Windows :-(
      b4c3efd8
  36. 12 May, 1998 1 commit