Shifted Results from External
    Dar Scott 
    dsc at swcp.com
       
    Thu May  4 14:59:18 EDT 2006
    
    
  
On May 4, 2006, at 11:06 AM, Mark Wieder wrote:
>> That is, if calls are like this--f1(), g(), g(), f2(), g()--
>> at some point the data returned is that that should have been for the
>> previous call--empty, f1(), g(), g(), f2().  I have no queues in my
>> code, but it looks as if data is queued but an extra value is left in
>> or inserted at some point.  (The customer also reported memory usage
>> growth.)
>
> That's indeed weird. My only guess at the moment is that one of your
> functions may be getting compiled with a different calling protocol
> than the others: it's expecting rev to clean up the stack, while rev
> looks at the protocol and thinks the function should clean it up. And
> that this function only gets called rarely, but enough to leave an
> extra value lying about on top of the stack.
Good thinking.
Everything that Rev sees is C.  All the C++ is hidden.
Also, everything works fine until after a long stress.
Even then, I have trouble seeing how this might cause the symptoms.
I think this might be part of the answer but is still quite shy.
Dar
    
    
More information about the use-livecode
mailing list