cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Stay updated on what is happening on the PTC Community by subscribing to PTC Community Announcements. X

Stack Overflow

thomas_blatchfo
1-Newbie

Stack Overflow

Just wondering if others have experienced a similar problem in Editor - particularly when ACL code is tied to the processing of tags in the document, and users move document tags around by dragging them; causing a stack overflow exception to be thrown and subsequently crashing Editor.


I'm just imagining how the Editor might use multiple threads to process user input (such as dragging around elements), which might trigger some sort of concurrency issue by calling the ACL on multiple (too many) stack frames, thereby causing the crash. I am wondering if there's a way to configure Editor so that it won't call the ACL until AFTER all (queued) user input events have finished processing - like "wait until no user input appears for 0.5 seconds" or something.

1 REPLY 1

As I recall, Editor does very little threading, if any.  Chances are
that the ACL is getting called in some way that it isn't expecting,
probably leading to out-of-control recursion.  Can you post more
details about the ACL code?

-Brandon 🙂


On Wed, Aug 24, 2011 at 9:26 AM, Tom Blatchford
<thomas_blatchford@hphc.org> wrote:
> Just wondering if others have experienced a similar problem in Editor -
> particularly when ACL code is tied to the processing of tags in the
> document, and users move document tags around by dragging them; causing a
> stack overflow exception to be thrown and subsequently crashing Editor.
>
> I'm just imagining how the Editor might use multiple threads to process user
> input (such as dragging around elements), which might trigger some sort of
> concurrency issue by calling the ACL on multiple (too many) stack frames,
> thereby causing the crash. I am wondering if there's a way to configure
> Editor so that it won't call the ACL until AFTER all (queued) user input
> events have finished processing - like "wait until no user input appears for
> 0.5 seconds" or something.
>
> ----------
Top Tags