https://cocomud.plan.io/https://cocomud.plan.io/favicon.ico2017-01-19T17:19:22ZCocoMUD PlanioCocoMUD client - Bug #90: Trigger variables sometimes collidehttps://cocomud.plan.io/issues/90?journal_id=2122017-01-19T17:19:22ZVincent Le Goff
<ul><li><strong>Category</strong> set to <i>SharpScript</i></li><li><strong>Status</strong> changed from <i>Open</i> to <i>In Progress</i></li><li><strong>% Done</strong> changed from <i>0</i> to <i>20</i></li></ul><p>After some testing, it appears that the problem comes from several threads running at the same time. Each client being in a separate thread, messages could arrive at the same time. Furthermore, when opening the same world in different tabs, the triggers aren't copied (so the SharpScript engine is one of them, not both, which creates conflicts). The solution would be to use a locking system when executing triggers (or macros/aliases, for that matter). This would also reset the SharpScript engine for triggers being executed.</p> CocoMUD client - Bug #90: Trigger variables sometimes collidehttps://cocomud.plan.io/issues/90?journal_id=2132017-01-20T00:52:39ZVincent Le Goff
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Closed</i></li><li><strong>% Done</strong> changed from <i>20</i> to <i>100</i></li></ul><p>Fixed in commit <a class="changeset" title="Add a locking system to independently execute triggers, macros and aliases" href="https://cocomud.plan.io/projects/cocomud-client/repository/github/revisions/28046bf51f2cd8c29b1890595e4e5090f5af0c3a">28046bf51f2cd8c29b1890595e4e5090f5af0c3a</a>.</p>