Revision: 12773
          
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=12773&view=rev
Author:   druzus
Date:     2009-10-26 23:01:50 +0000 (Mon, 26 Oct 2009)

Log Message:
-----------
2009-10-27 00:01 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
  * harbour/src/vm/hashes.c
    ! use hb_gcMark() instead of hb_gcItemRef() to mark unlocked item

  * harbour/src/vm/garbage.c
    * moved hb_itemClear() from hb_gcGripDrop() to hb_gcGripRelease()
      Now items are freed in the same way as any other GC blocks and
      hb_gcGripDrop() is simple wrapper to hb_gcRefFree()

  * harbour/src/vm/hvm.c
  * harbour/src/vm/thread.c
    ! unlock item which stores thread return value to eliminate possible
      memory leaks, i.e. when thread returns its own pointer item.
    ! unlock item which stores notify messages to eliminate possible
      memory leaks, i.e. when mutex is used as notify value in its
      own message queue.

  * harbour/include/hbapigt.h
  * harbour/include/hbgtcore.h
  * harbour/src/rtl/hbgtcore.c
  * harbour/src/vm/garbage.c
    + added new GT method MARK() executed by GC to mark all internall
      GC blocks as used.
    + added hb_gtIsGtRef() internal function
    ! unlock internal GT items (pCargo, pNotifierBlock, pMutex) to
      eliminate possible memory leaks, i.e. when pGT item is stored
      in it's own cargo value or is accessed from notifier codeblock

Modified Paths:
--------------
    trunk/harbour/ChangeLog
    trunk/harbour/include/hbapigt.h
    trunk/harbour/include/hbgtcore.h
    trunk/harbour/src/rtl/hbgtcore.c
    trunk/harbour/src/vm/garbage.c
    trunk/harbour/src/vm/hashes.c
    trunk/harbour/src/vm/hvm.c
    trunk/harbour/src/vm/thread.c


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to