← Back to team overview

mudlet-makers team mailing list archive

[Bug 1310361] [NEW] Global gSysMessage leaks messages between profiles

 

Public bug reported:

Current Git code (at least) uses a global QStringList qSysMesssages to
hold initialisation messages (both Ok and Error types) from the Lua
subsystem (TLuaInterpreter) and from the Server connection process
(cTelnet) unfortunately the code in cTelnet::connectIt() cannot tell
from which profile/host instance the messages originated and does not
explicitly remove them.

This means that upon starting up a second profile in a Mudlet instance
messages from the first profile are shown.

Code that removes duplicate messages merely confuses the information
displayed with the result that if a problem has been fixed between the
first and second profiles being started it is possible to get an "Error"
message from the first and then an "Ok" for the same module from the
second.

I have coded a fix at my branch mudletDev_fileLocation_debugControls on
my GitHub repository
https://github.com/SlySven/Mudlet2/tree/mudletDev_fileLocation_debugControls
which tracks Chris's mudletDev repository on GH, it is down as pull
request #35 to that: https://github.com/Chris7/Mudlet2/pull/35.

As a highly contrived example I un-installed all the external non-Mudlet
Lua modules that Mudlet uses and started up the Mudlet instance, I fired
up one profile, then loading in just my distribution's lua-filesystem
package, and then started a second profile before taking a composite
screen shot (it took more than one screen to show all the text!) that is
attached here.  This is the output from the current mudletDev branch
code.

** Affects: mudlet
     Importance: Undecided
     Assignee: Stephen Lyons (slysven)
         Status: New

** Attachment added: "Current, pre-patch display"
   https://bugs.launchpad.net/bugs/1310361/+attachment/4090339/+files/pre-fix.png

-- 
You received this bug notification because you are a member of Mudlet
Makers, which is subscribed to Mudlet.
https://bugs.launchpad.net/bugs/1310361

Title:
  Global gSysMessage leaks messages between profiles

Status in Mudlet the MUD client:
  New

Bug description:
  Current Git code (at least) uses a global QStringList qSysMesssages to
  hold initialisation messages (both Ok and Error types) from the Lua
  subsystem (TLuaInterpreter) and from the Server connection process
  (cTelnet) unfortunately the code in cTelnet::connectIt() cannot tell
  from which profile/host instance the messages originated and does not
  explicitly remove them.

  This means that upon starting up a second profile in a Mudlet instance
  messages from the first profile are shown.

  Code that removes duplicate messages merely confuses the information
  displayed with the result that if a problem has been fixed between the
  first and second profiles being started it is possible to get an
  "Error" message from the first and then an "Ok" for the same module
  from the second.

  I have coded a fix at my branch mudletDev_fileLocation_debugControls
  on my GitHub repository
  https://github.com/SlySven/Mudlet2/tree/mudletDev_fileLocation_debugControls
  which tracks Chris's mudletDev repository on GH, it is down as pull
  request #35 to that: https://github.com/Chris7/Mudlet2/pull/35.

  As a highly contrived example I un-installed all the external non-
  Mudlet Lua modules that Mudlet uses and started up the Mudlet
  instance, I fired up one profile, then loading in just my
  distribution's lua-filesystem package, and then started a second
  profile before taking a composite screen shot (it took more than one
  screen to show all the text!) that is attached here.  This is the
  output from the current mudletDev branch code.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mudlet/+bug/1310361/+subscriptions


Follow ups

References