[Laszlo-dev] For Review: Change 20071207-ptw-v Summary: Bring memory tracing to the modern era

Philip Romanik promanik at laszlosystems.com
Sat Dec 8 07:28:12 PST 2007


Approved, but a couple of changes are needed:

- whyAlive(1000) will display 1000 lines, even if 
there aren't 1000 lines to display.

- When viewing the leaks, if I click on the first 
clickable link on a line (ex: 
'global.LzIdle.onidle.delegateList.9'), the flash 
player crashes. Clicking on the second link (ex: 
<LzDelegate#13| LzSprite ...>) works fine.

- The wiki page is badly out of date: 
http://wiki.openlaszlo.org/Embedded_Debugger. At 
a minimum whyAlive() should be documented that it 
now takes an optional argument.





>Change 20071207-ptw-v by 
><mailto:ptw at dueling-banjos.local>ptw at dueling-banjos.local on 2007-12-07
>22:50:21 EST
>      in /Users/ptw/OpenLaszlo/ringding-2
>      for 
> <http://svn.openlaszlo.org/openlaszlo/trunk>http://svn.openlaszlo.org/openlaszlo/trunk
>
>Summary: Bring memory tracing to the modern era
>
>Bugs Fixed:
>LPP-5205: 'Debug.whyAlive no longer shows reference keeping object alive'
>
>Technical Reviewer: 
><mailto:philip at pbrdev.com>philip at pbrdev.com 
>(pending) QA Reviewer: 
><mailto:yfang at laszlosystems.com>yfang at laszlosystems.com (pending)
>
>Details:
>      LzMessage: fix error in concat observed in passing, make
>      appendInternal of another LzMessage concat, not present the
>      message
>
>      LzMemory: Make some things classes.  Stor leaks as a new class
>      that has a pretty descriptor and breaks out the leak information
>      for easy inspection.  Use a stable sort on leaks, sort the biggest
>      leak to the front of the Array.  Make whyAlive describe the top
>      leaks.
>
>      LzDebug: Use user toString methods, obey unique flag.
>
>      LzFormatter: New formatting flag `=` takes the next argument as
>      the object to be represented by the format (overriding the normal
>      hot-linking that occurs in the debugger so you can write a custom
>      representation for an object).
>
>Tests:
>      Debug.markObjects()
>      Debug.findNewObjects()
>      Debug.whyAlive()
>
>      now yields useful information:
>
>      lzx> Debug.whyAlive()
> 
>global.spriteroot.$m1.debugloader.loadmc1.reqobj: 
>  (£52) «Object#100| {_dbg_check:...»
>      global.LzFocus.csel.sprite.__LZtextclip.filters: (£6) «Array(0)#102| []»
>
>global.LzModeManager.__LZlastclick.sprite.__LZbuttonRef.but.filters:
>(£6) «Array(0)#104| []»
>      global.__offscreenkeyclip.filters: (£6) «Array(0)#106| []»
>      global.spriteroot.$m0.$m0.$m5.$LzText.filters: (£6) «Array(0)#108| []»
>      global.spriteroot.$m0.$m0.$mcB.but.filters: (£6) «Array(0)#110| []»
>      global.spriteroot.$m1.$m0.$m0.$mcB.but.filters: (£6) «Array(0)#112| []»
> 
>global.spriteroot.$m1.$m0.$m1.$m0.$mcB.but.filters: (£6) «Array(0)#114| []»
> 
>global.spriteroot.$m1.$m0.$m1.$m1.$mcB.but.filters: (£6) «Array(0)#116| []»
> 
>global.spriteroot.$m1.$m0.$m1.$m2.$mcB.but.filters: (£6) «Array(0)#118| []»
>      ...
>      «__LzLeaks(28)#120| 208 smoots»
>      lzx>
>
>Files:
>M      WEB-INF/lps/lfc/debugger/LzMessage.lzs
>M      WEB-INF/lps/lfc/debugger/platform/swf/LzMemory.as
>M      WEB-INF/lps/lfc/debugger/platform/swf/LzDebug.as
>M      WEB-INF/lps/lfc/debugger/platform/dhtml/LzDebug.js
>M      WEB-INF/lps/lfc/compiler/LzFormatter.lzs
>
>Changeset: 
><http://svn.openlaszlo.org/openlaszlo/patches/20071207-ptw-v.tar>http://svn.openlaszlo.org/openlaszlo/patches/20071207-ptw-v.tar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.openlaszlo.org/pipermail/laszlo-dev/attachments/20071208/4aa50f9c/attachment.html


More information about the Laszlo-dev mailing list