An error occurred fetching the project authors.
  1. 24 Apr, 2000 1 commit
    • Guido van Rossum's avatar
      Christian Tismer -- total rewrite on trashcan code. · e92e610a
      Guido van Rossum authored
      Improvements:
      - does no longer need any extra memory
      - has no relationship to tstate
      - works in debug mode
      - can easily be modified for free threading (hi Greg:)
      
      Side effects:
      Trashcan does change the order of object destruction.
      Prevending that would be quite an immense effort, as
      my attempts have shown. This version works always
      the same, with debug mode or not. The slightly
      changed destruction order should therefore be no problem.
      
      Algorithm:
      While the old idea of delaying the destruction of some
      obejcts at a certain recursion level was kept, we now
      no longer aloocate an object to hold these objects.
      The delayed objects are instead chained together
      via their ob_type field. The type is encoded via
      ob_refcnt. When it comes to the destruction of the
      chain of waiting objects, the topmost object is popped
      off the chain and revived with type and refcount 1,
      then it gets a normal Py_DECREF.
      
      I am confident that this solution is near optimum
      for minimizing side effects and code bloat.
      e92e610a
  2. 14 Apr, 2000 1 commit
  3. 10 Apr, 2000 2 commits
  4. 25 Mar, 2000 1 commit
    • Guido van Rossum's avatar
      Christian Tismer: · 13ff8eb4
      Guido van Rossum authored
      Added "better safe than sorry" patch to the new
      trashcan code in object.c, to ensure that tstate
      is not touched when it might be undefined.
      13ff8eb4
  5. 13 Mar, 2000 1 commit
    • Guido van Rossum's avatar
      Christian Tismer's "trashcan" patch: · d724b234
      Guido van Rossum authored
      Added wrapping macros to dictobject.c, listobject.c, tupleobject.c,
      frameobject.c, traceback.c that safely prevends core dumps
      on stack overflow. Macros and functions in object.c, object.h.
      The method is an "elevator destructor" that turns cascading
      deletes into tail recursive behavior when some limit is hit.
      d724b234
  6. 10 Mar, 2000 1 commit
  7. 20 Jan, 2000 1 commit
  8. 12 Jan, 2000 1 commit
  9. 21 Jul, 1998 1 commit
  10. 09 Jun, 1998 1 commit
  11. 22 May, 1998 1 commit
  12. 28 Apr, 1998 1 commit
  13. 21 Apr, 1998 1 commit
  14. 11 Apr, 1998 1 commit
  15. 10 Apr, 1998 1 commit
  16. 09 Apr, 1998 1 commit
  17. 19 Jan, 1998 1 commit
  18. 19 Nov, 1997 1 commit
    • Guido van Rossum's avatar
      Add a new function PyNumber_CoerceEx() which works just like · 242c6425
      Guido van Rossum authored
      PyNumber_Coerce() except that when the coercion can't be done and no
      other exceptions happen, it returns 1 instead of raising an
      exception.
      
      Use this function in PyObject_Compare() to avoid raising an exception
      simply because two objects with numeric behavior can't be coerced to a
      common type; instead, proceed with the non-numeric default comparison.
      
      Note that this is a somewhat questionable practice -- comparisons for
      numeric objects shouldn't default to random behavior like this, but it
      is required for backward compatibility.  (Case in point, it broke
      comparison of kjDict objects to integers in Aaron Watters' kjbuckets
      extension.)  A correct fix (for python 2.0) should involve a different
      definiton of comparison altogether.
      242c6425
  19. 12 Aug, 1997 1 commit
  20. 05 Aug, 1997 1 commit
  21. 23 May, 1997 1 commit
  22. 20 May, 1997 1 commit
  23. 15 May, 1997 1 commit
  24. 02 May, 1997 1 commit
  25. 18 Jan, 1997 1 commit
  26. 05 Dec, 1996 1 commit
  27. 25 Oct, 1996 1 commit
  28. 11 Sep, 1996 1 commit
  29. 12 Aug, 1996 1 commit
  30. 09 Aug, 1996 1 commit
  31. 21 Jul, 1996 1 commit
  32. 24 May, 1996 1 commit
  33. 22 May, 1996 1 commit
  34. 12 Jan, 1996 1 commit
  35. 29 Aug, 1995 1 commit
    • Sjoerd Mullender's avatar
      Implemented two new functions in sys: · 6ec3c653
      Sjoerd Mullender authored
      	getcounts() returns a list of counts of allocations and
      		deallocations for all different object types.
      	getobjects(n [, type ]) returns a list of recently allocated
      		and not-yet-freed objects of the given type (all
      		objects if no type given).  Only the n most recent
      		(all if n==0) objects are returned.
      getcounts is only available if compiled with -DCOUNT_ALLOCS,
      getobjects is only available if compiled with -DTRACE_REFS.  Note that
      everything must be compiled with these options!
      6ec3c653
  36. 12 Jul, 1995 1 commit
  37. 06 Apr, 1995 1 commit
  38. 29 Mar, 1995 1 commit
  39. 10 Feb, 1995 1 commit