Gammon Forum

See www.mushclient.com/spam for dealing with forum spam. Please read the MUSHclient FAQ!

mushclient crashed with "bad magic"

It is now over 60 days since the last post. This thread is closed. Refresh page

Posted by Jcl (42 posts) bio Date Tue 15 Oct 2013 04:17 AM (UTC) Message Mushclient Version: 4.84



I often encounter that mushclient crashed with "bad magic".

I do not know the exact reason.

But I found that when one line will going to trigger multiple triggers will often lead to crash.

The triggers to be triggered are created by "wait.regexp" in different plug-ins.



For Example：

Line A triggered plugin A, and it created a tigger using "wait.regexp" to wait for Line C.

Line B triggered plugin B, and it created a tigger using "wait.regexp" to wait for Line C.

When Line C arrive, the mushclient will likely to crash.



top

Posted by Nick Gammon Australia (22,436 posts) bio Forum Administrator Date Reply #1 on Tue 15 Oct 2013 04:20 AM (UTC) Message Post these triggers please.



For advice on how to copy aliases, timers or triggers from within MUSHclient, and paste them into a forum message, please see Copying XML.



Please help us by advising the version of MUSHclient you are using. Use the Help menu -> About MUSHclient. - Nick Gammon



www.gammon.com.au, www.mushclient.com top

Posted by Jcl (42 posts) bio Date Reply #2 on Tue 15 Oct 2013 05:39 AM (UTC) Message Plugin A:

<triggers> <trigger enabled="y" regexp="y" send_to="10" sequence="10" match="^.*test1$" script="func" /> </triggers> <script> require "wait" function func() wait.make(function() wait.regexp("^.*test3$") SendNoEcho("say test1 end") end) end </script>



Plugin B:

<triggers> <trigger enabled="y" regexp="y" send_to="10" sequence="10" match="^.*test2$" script="func" /> </triggers> <script> require "wait" function func() wait.make(function() wait.regexp("^.*test3$") SendNoEcho("say test2 end") end) end </script>





First, add plugin A and plugin B into world.

Then, enter command "say test1" to trigger plugin A and enter command "say test2" to trigger plugin B.

Now, enter command "say test3", the mushclient will show error message "Error executing regular expression: Bad magic" and crash.



MUSHClient version is 4.84.



top

Posted by Nick Gammon Australia (22,436 posts) bio Forum Administrator Date Reply #3 on Wed 16 Oct 2013 10:39 PM (UTC) Message I can reproduce the problem. MUSHclient crashes under the test conditions. I'm trying to work out why.



My tentative theory is that two triggers (in two plugins) match the same text (test3) and since the way that the wait module works, it omits the trigger after it matches, somehow having both omitted at the same time is causing the crash. - Nick Gammon



www.gammon.com.au, www.mushclient.com top

Posted by Nick Gammon Australia (22,436 posts) bio Forum Administrator Date Reply #4 on Thu 17 Oct 2013 08:00 AM (UTC) Message That bug will be fixed in version 4.91.



https://github.com/nickgammon/mushclient/commit/0cd1b1f73e86

- Nick Gammon



www.gammon.com.au, www.mushclient.com top

Posted by Nick Gammon Australia (22,436 posts) bio Forum Administrator Date Reply #5 on Thu 17 Oct 2013 10:33 PM (UTC) Message Version 4.91 now available:



http://www.gammon.com.au/forum/?id=12170 - Nick Gammon



www.gammon.com.au, www.mushclient.com top

Posted by Jcl (42 posts) bio Date Reply #6 on Mon 21 Oct 2013 02:09 PM (UTC) Message Thank you for your efforts. It looks no problem. top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.

6,730 views.

It is now over 60 days since the last post. This thread is closed. Refresh page

Go to topic: (Choose topic) Area Editor: Bug reports Area Editor: General Area Editor: News and updates Area Editor: Suggestions Area Editor: Tips and tricks Dawn of Time: Administration Dawn of Time: Configuration Dawn of Time: Installing/compiling the server Dawn of Time: New Dawn Muds Announcements Dawn of Time: Playing Dawn of Time: What is Dawn of Time (Dawn)? Electronics: Microprocessors Electronics: Operational Amplifiers Forum: About Forum: Announcements Forum: Mailing other users Forum: Problems Forum: Registering Forum: Searching Forum: Subscribing Forum: Suggestions Forum: Test Forum: Time zones / time display Forum software: Administration Forum software: Installation MUDs: Announcements MUDs: General MUDs: MUD Design Concepts MUSHclient: Announcements MUSHclient: Beta testing MUSHclient: Bug reports MUSHclient: Development MUSHclient: General MUSHclient: Getting Started MUSHclient: International MUSHclient: Jscript MUSHclient: Lua MUSHclient: Miniwindows MUSHclient: MXP and Pueblo MUSHclient: Perlscript MUSHclient: Plugins MUSHclient: Python MUSHclient: Suggestions MUSHclient: Tips and tricks MUSHclient: VBscript MUSHclient: Wine PennMUSH: Compiling the server PennMUSH: Running the server Programming: General Programming: STL Quilting: General ROM: Compiling the server ROM: Running the server SMAUG: Commands SMAUG: Compiling the server SMAUG: Lua SMAUG: Running the server SMAUG: SMAUG coding Search the forum

top

Quick links: MUSHclient. MUSHclient help. Forum shortcuts. Posting templates. Lua modules. Lua documentation.

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.