Yacoby / Wrye-Mash

Fork of Wrye's Wrye Mash
18 stars 19 forks source link

Error when manually moving active mod after tes3cmd cleaning #6

Open RMWChaos-duplicate opened 13 years ago

RMWChaos-duplicate commented 13 years ago

Reported by Psymon on 2011.05.10 04:46am CDT...

After cleaning an active mod with integrated tes3cmd, moving the mod manually from the /Data Files folder while WMSA 85 is open in Mods Tab results in the following traceback...

Traceback (most recent call last): File "F:\Bethesda Games\Morrowind\Mopy\masher.py", line 2428, in RefreshData if mosh.mwIniFile.refresh() | mosh.modInfos.refresh(): File "F:\Bethesda Games\Morrowind\Mopy\mosh.py", line 3022, in refresh self.unload(loadFile) File "F:\Bethesda Games\Morrowind\Mopy\mosh.py", line 3134, in unload mwIniFile.unload(fileName,False) File "F:\Bethesda Games\Morrowind\Mopy\mosh.py", line 2394, in unload self.refreshDoubleTime() File "F:\Bethesda Games\Morrowind\Mopy\mosh.py", line 2334, in refreshDoubleTime mtime = modInfos[loadFile].mtime File "F:\Bethesda Games\Morrowind\Mopy\mosh.py", line 2718, in getitem return self.data[key]KeyError: 'Quieter_UI_Sounds.esp'

RMWChaos-duplicate commented 13 years ago

I could not reproduce this with WMSA 85. I did the following...

  1. Activated plugin.esp
  2. Initiated tes3cmd clean
  3. Cut/paste mod out of /Data Files (result: no error)
  4. Cut/paste back into /Data Files(result: no error ; mod was inactive at this time by default WM behavior)
  5. Reactivated mod (result: no error)
  6. Repeated multiple times, same results

Possible fix, modify "on tes3cmd clean" code as follows...

  1. initiate local variable "initial_mod_state"
  2. check mod state and set initial_mod_state==(0 : 1 ; where 0=='not-active' and 1=='active')
  3. if initial_mod_state==1, deactivate mod
  4. initiate tes3cmd clean process
  5. if initial_mod_state==1, reactivate mod

Without being able to reproduce it, Psymon will have to test if the fix works himself.

Sharlikran commented 7 years ago

I'll look into this once I have made some changes.