Sorry, I was using wrong version of com.dll, so ref counting releasing not 
happening at all.  Tests continue....

--- In [email protected], "brucexs" <bruc...@...> wrote:
>

> 
> > There seems to be an unreleased handle left over after
> > 
> > With objRange.Font
> > 
> >  .Bold = 1
> >  .Animation = 3
> >  .Size = 30
> > 
> > endWith
> 
> The above is implemented as
> local _with_1 = objRange.Font
> _with_1.bold = 1 //etc
> _with_1 = ""  // should decrement ref count to objRange.Font
> 
> So maybe the problem you are experiencing is related to following.  But if 
> you try the above statements explicitly, and they are the only statements in 
> the script (or at least the script is as small as possible), does it work?  
> 
> 
> 
> >
> > objDoc = objApp.Documents.Add
> > ...
> > local objDoc = com.get_object(scriptfolder ++ ?"\demo.doc")
> > 
> > results in an unreleased handle, but
> > 
> > objDoc = objApp.Documents.Add
> > ...
> > objDoc = com.get_object(scriptfolder ++ ?"\demo.doc")
> > 
> > releases handle as expected
> 
> I cannot duplicate the above situation with my ref counted vectors.  The 
> following seems to be the same structure as what you are doing, but it works:
> 
> local vv, qq
> vv= vec.create(10)
> win.debug("should be 1", vv.__refs__)
> 
> qq=vv
> win.debug("a. should be 2", vv.__refs__)
> win.debug("b. should be 2", qq.__refs__)
> 
> local vv=vec.create(12)
> win.debug("c. should be 1",vv.__refs__)
> win.debug("d. should be 1",qq.__refs__)
> 
> local qq=vv
> win.debug("e. should be 2",vv.__refs__)
> win.debug("ee. should be 2",qq.__refs__)
> 
> local vv=vec.create(12)
> win.debug("f. should be 1", vv.__refs__)
> win.debug("g. should be 1",qq.__refs__)
> 
> local xx=qq
> win.debug("h. should be 2",xx.__refs__)
> local qq=""
> win.debug("i. should be 1",xx.__refs__)
> 
> 
> 
> 
> 
> 
> Can you send me a whole script that fails, including _refs__ debug output?
> 
> 
> >
>


Reply via email to