Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD Beta Forum
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sat Oct 13, 2007 1:15 pm   

[2.06] Crash while converting
 
When converting my .mud for the first time I got a crash as the conversion neared completion. The file converts properly when done through an untitled session. I haven't gotten to testing this with other files, so it is possible it is something evil amongst my settings that misbehaves during the to opening of a session. If no one else runs into this then I will spend some time to diagnose what the bad item is.

Procedure
1. Fresh Install to clean directory
2. Launch CMud
3. Import Sessions
4. Open Session Offline
5. Wait for crash
Code:
date/time         : 2007-10-13, 09:15:14, 951ms
operating system  : Windows XP Service Pack 2 build 2600
system language   : English
system up time    : 25 days 2 hours
program up time   : 2 minutes 16 seconds
processor         : AMD Athlon(tm) Processor
physical memory   : 143/383 MB (free/total)
free disk space   : (C:) 14.09 GB
display mode      : 1024x768, 32 bit
process id        : $da4
allocated memory  : 32.02 MB
executable        : CMUD.exe
exec. date/time   : 2007-10-12 22:49
version           : 2.6.0.0
madExcept version : 3.0b
callstack crc     : $1b0bbdbf, $3aee6887, $3aee6887
count             : 2
exception number  : 1
exception class   : EAccessViolation
exception message : Access violation at address 009B4454 in module 'CMUD.exe'. Read of address 00000048.

Main ($16d4):
009b4454 +000 CMUD.exe     OptionDat       1364   +0 PrefData.Get_prefVarChar
00d41fc5 +1c9 CMUD.exe     CodeExec        1412  +31 HandleVarRef
00d4712b +443 CMUD.exe     CodeExec        2886  +57 TCodeExec.InternalExecute
00d3eda6 +08e CMUD.exe     CodeExec         474  +12 TCodeExec.Expression
00d361f2 +086 CMUD.exe     PrefDat        10599  +10 TCacheNode.GetCaption
00d32beb +0bb CMUD.exe     PrefDat         9132  +15 PrefRec.InternalGetCaption
00d32ce5 +00d CMUD.exe     PrefDat         9171   +1 PrefRec.GetCaption
00d2280f +02f CMUD.exe     PrefDat         2328   +4 StatusRec.Invalidate
00d226b0 +010 CMUD.exe     PrefDat         2300   +2 StatusRec.ChangeParent
00d313bd +591 CMUD.exe     PrefDat         8691  +61 PrefRec.UpdateFromDB
00d23d46 +112 CMUD.exe     PrefDat         2775  +16 PkgData.AfterPost
009005e3 +07b CMUD.exe     DataSetHandler   179   +7 THandlerList.CallHandlers
00900ca8 +004 CMUD.exe     DataSetHandler   255   +0 THandlerList.DoAfterPost
006535ad +021 CMUD.exe     DB             10763   +1 TDataSet.DoAfterPost
00667e53 +053 CMUD.exe     kbmMemTable    14898  +12 TkbmCustomMemTable.DoAfterPost
00652958 +088 CMUD.exe     DB             10261  +11 TDataSet.Post
006532c6 +04e CMUD.exe     DB             10669   +7 TDataSet.CheckBrowseMode
00652bb2 +00a CMUD.exe     DB             10320   +1 TDataSet.BeginInsertAppend
0065285d +00d CMUD.exe     DB             10237   +1 TDataSet.Append
00d67a7c +044 CMUD.exe     PkgDM           1926   +3 TPkg.AddSetting
00d6b027 +177 CMUD.exe     PkgDM           2884  +19 ReadStatus
00d6cf88 +5dc CMUD.exe     PkgDM           3430 +114 TPkg.LoadSetting
00d67963 +163 CMUD.exe     PkgDM           1887  +19 TPkg.Open
00d24b77 +347 CMUD.exe     PrefDat         3212  +66 PkgData.Load
00c5035e +1da CMUD.exe     PARENT          2339 +106 TParentForm.NewWindow
00c54459 +399 CMUD.exe     PARENT          3907  +44 TParentForm.NewMUD
00c50782 +01a CMUD.exe     PARENT          2600   +2 MUDWindow
00c5083b +08f CMUD.exe     PARENT          2618  +14 TParentForm.CharAction
00c508e5 +005 CMUD.exe     PARENT          2642   +0 TParentForm.DoAction
00505f8b +1df CMUD.exe     Controls        4645  +53 TControl.WndProc
00509cba +18e CMUD.exe     Controls        6342  +33 TWinControl.WndProc
00526d98 +478 CMUD.exe     Forms           3098 +103 TCustomForm.WndProc
00505c96 +036 CMUD.exe     Controls        4552   +5 TControl.Perform
00bfc094 +020 CMUD.exe     DXSounds        2013   +9 TCustomDXSound.FormWndProc
00bf97f0 +00c CMUD.exe     DXClass          572   +1 TControlSubClass.WndProc
0050988c +034 CMUD.exe     Controls        6237   +3 TWinControl.MainWndProc
0047fef0 +014 CMUD.exe     Classes        10966   +8 StdWndProc
77d4e361 +016 USER32.dll                             CallWindowProcA
006d5e8f +0a7 CMUD.exe     aqDockingUtils  1728   +7 CallDefWndProc
006d5f7d +0dd CMUD.exe     aqDockingUtils  1776  +41 TaqWindowEventFilter.WndProc
0047fef0 +014 CMUD.exe     Classes        10966   +8 StdWndProc
77d4bcc7 +00a USER32.dll                             DispatchMessageA
0052ee40 +0ac CMUD.exe     Forms           6873  +13 TApplication.ProcessMessage
0052ee87 +00f CMUD.exe     Forms           6892   +1 TApplication.HandleMessage
0052f122 +0a6 CMUD.exe     Forms           6976  +16 TApplication.Run
00db9538 +088 CMUD.exe     CMUD             344  +18 initialization
7c91312f +069 ntdll.dll                              RtlUnicodeStringToAnsiString
7c812907 +0b6 kernel32.dll                           GetVersionExA

I also repeated this crash on a relaunch, open session offline.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Seb
Wizard


Joined: 14 Aug 2004
Posts: 1269

PostPosted: Sat Oct 13, 2007 1:33 pm   
 
What is your variable special character? @? (I see the last thing CMUD was doing was trying to get it.)

Also, when you reopen CMUD, is it trying to reconvert your .mud file or open the new package? (Probably best to check via Sessions Window, Edit, Files, or whatever.)
Reply with quote
Seb
Wizard


Joined: 14 Aug 2004
Posts: 1269

PostPosted: Sat Oct 13, 2007 3:13 pm   
 
I converted my *.mud file without a crash... Although I didn't use the Import Sessions wizard - I got CMUD to import my character file first and then convert my *.mud file when I opened the session.
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sat Oct 13, 2007 4:33 pm   
 
This may be tied to other bugs. Even though I could get the conversion to go through when using an untitled session and opening the .mud directly; I can't it to save the results at all. Hopefully I can narrow down what the problem portion is before too long.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sat Oct 13, 2007 6:10 pm   
 
I have narrowed this down to a single class. Oddly the variables cause the problems here. There are different procedures to note different problems that appear, but they are all traceable to this class.

Among other things to note: when I imported my full settings by opening the .mud from an untitled session no results would be saved to the package. However importing this class by itself does save a package correctly. I finally managed to get what looks to be a good import by doing a few extra copies and moves around.

Procedure A (causes crash above)
1. Copy the .mud file some place easy to work with
2. Launch CMud
3. Create a session, setting the .mud as the main package
4. Save the session settings
5. Open the new session offline

Procedure B (causes hang in package editor or hard Access Violation crash)
1. Launch CMud
2. Close Sessions Window (ESC)
3. Open Package Editor (CTRL-G)
4. Select File|Open from the Package Editor menu
5. Locate the .mud and open it
6. Once conversion is complete copying or moving the variables will cause the problem
6a. Moving the first variable to the untitled package by dragging it to that tab cause the hang
6b. Copying the variable to the untitled package with r-click Copy To, then examining the copy causes AV

File sent is butterfly.zip
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sat Oct 13, 2007 6:22 pm   
 
This gets even weirder. If you open another session offline first then the file will convert properly.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Sat Oct 13, 2007 6:52 pm   
 
File uploaded to Guru area incase you didn't get the email.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Mon Oct 15, 2007 10:49 pm   
 
I'll download your file and make this a priority for my bug testing tomorrow (Tuesday). Sorry I didn't respond quicker, but I'm going through the forums today and actually fixing bugs instead of just adding them to the bug list.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue Oct 16, 2007 11:08 pm   
 
Found the bug and fixed it for v2.07. It was a bug in the status bar import routine. I'm surprised I hadn't run into it when importing my own files. Not only does it cause this crash, but I think the same bug is responsible for your status bar items being put in the wrong class (or top level of the package). Thanks for the files...it was actually easy to fix once I found it :)
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD Beta Forum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net