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

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Mon Apr 09, 2007 4:08 am   

crash from opening another package
 
I connected to a session, and then loaded a package from my other character to copy my scripts over. I used the "copy to" option from the other package's window. Then i closed it, the alias/triggers didn't work when copied so i quit, and on that screen did "new session." After that, the package i loaded kept loading over and over again, so i used the task manager to exit cmud. Now I can't even load a thing in cmud. After uninstall/reinstall, i still get an error from the loadup, and upon connecting i get this error:

Error: Access violation at 0x00641DE6 (tried to write to 0x00040FFC), program terminated
Reply with quote
Zugg
MASTER


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

PostPosted: Mon Apr 09, 2007 4:38 pm   
 
Can you email me the *.PKG file that is loading over and over again (send it as an email attachment to support@zuggsoft.com). It sounds like one of your packages got corrupted.

Can you load other character sessions, or just not the session that you created with the "New Session" command? I can't think of how a corrupted session could mess up any of your other sessions.

For the Access violation error, use the Send Bug Report button to send this crash dump into our help system so that I can determine what caused the crash.
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Tue Apr 10, 2007 12:35 am   
 
I think I asked this already. Is there any easy way to tell if a package is corrupted (or may be)? I know this will be soon obsoleted but it would be useful for those lingering out there and for the occasional unexpected hiccup.
_________________
Asati di tempari!
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Tue Apr 10, 2007 12:57 am   
 
I can't send a bug report because that message does not appear, I get the above mentioned Error:... and Cmud is exitted without the normal crash dialogue. Anything else I can do to help you out with this?
Reply with quote
Zugg
MASTER


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

PostPosted: Tue Apr 10, 2007 2:47 am   
 
Are you using Vista by any chance? If the error message doesn't have the Send Bug report option, then the error is happening before CMUD ever gets fully loaded, which makes it sound more like a problem with the copy protection being used. Make sure you don't have some other software running that might interfere with CMUD being loaded. There was some problems with certain Internet security software a few months ago. AOL and Computer Associates Pest Control caused similar problems. So make sure all of your security software and anti-virus software is up to date.

If that doesn't help, then when you uninstall CMUD, make sure you fully delete the entire CMUD installation directory, including the My Documents/My Games/CMUD folder to get rid of all CMUD files (after making a backup, of course!). But unless you messed around in the system registry, I'm not really sure what else could be causing this error.

Tech: There is no easy way to tell if a package is corrupted. If there was, then CMUD would just fix them as needed. In most cases, it's not the PKG file itself that is corrupted, but it's the *.XLY or *.TBZ layout files. If those files are left over from older versions, that can cause problems. But that's why I asked him to send me his PKG file since I've never seen a case where the package would get loaded over and over again, so that makes it sound like a weird problem.

The other way I've seen a corrupted package is when you have Windows/Modules stored within other settings instead of at the root level, or when other settings are at the root level instead of within a Window/Module.
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Wed Apr 11, 2007 2:30 am   
 
I use zone alarms anti-virus, and have been using Cmud for a few months. I am also on Windows XP. Since I can load other sessions now, but not my one package I believe there is some corruption in it. Do you have any suggestions as how to edit this file? I tried notepad++ but it was full of [NUL]'s and essentially unreadable. Also I noticed that one of my windows, guild, did not appear when you loaded it up. Upon opening this window I discovered it had the override network connection ticked, when I changd this and tried to save it, I got another error message without a bug report option that flat out closed cmud.
Reply with quote
Zugg
MASTER


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

PostPosted: Wed Apr 11, 2007 4:50 pm   
 
The PKG file is an SQLite database file. There is no way to edit it with any text editor. The "guild" window that you mentioned has the "Window is Visible" option unchecked in the settings, so that's why it isn't visible.

I'm not sure why the package file would load on my system and not yours if you have other packages that are loading correctly. When you click the Edit Session action and go to the Files tab are there any other packages being loaded that might be causing the problem?

Also, have you tried holding down the Shift key when clicking the Offline action to prevent any corrupted layout file from being loaded?
Reply with quote
bortaS
Magician


Joined: 10 Oct 2000
Posts: 320
Location: Springville, UT

PostPosted: Wed Apr 11, 2007 10:57 pm   
 
Chris,

I use these 2 tools to edit SQLite databases:

http://www.kraslabs.com/sqlite_analyzer.php
http://sqliteadmin.orbmu2k.de/
_________________
bortaS
~~ Crusty Klingon Programmer ~~
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Thu Apr 12, 2007 3:53 pm   
 
ok so after fiddling a bit this are the different results I am getting.

When loading in offline mode, my map loads and takes up the entire screen, when I restore the map to its normal size, the mud window has no screen but a tan look to it, as seen here:

http://i164.photobucket.com/albums/u34/chris74269/error1.jpg

All windows have the window is visible checked, 2 windows are tabbed and one is "top" on my main session. After unclicking and reclicking the "window is visible" and saving, the error
Error: Access violation at 0x00641DE6 (tried to write to 0x00040FFC), program terminated reappears.

When loading in offline mode by shift+clicking offline, everyone loads up perfectly(layout is right, map loads great), but upon connecting to the mud i get the
Error: Access violation at 0x00641DE6 (tried to write to 0x00040FFC), program terminated message.

To try and remedy this I deleted all my atconnect aliases/events and it still happened.
Reply with quote
Zugg
MASTER


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

PostPosted: Thu Apr 12, 2007 7:09 pm   
 
OK, I may have reproduced your crash here. Looks like it has something to do with one of the buttons that is trying to load. It only crashed when I tried to run it outside of Delphi, so it might take a bit to track this down, but at least I get the Send Bug report button that you are not getting, so I get some clue as to where the error is. And it only seems to happen when I try to connect.

Since I don't have your map, this tells me that it is *not* map releated. The screen that you showed with the missing mud window is caused by a corrupted layout file, so holding down the Shift key should fix that (and it sounds like it did).

I'll post again later today when I have more info on this.
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Thu Apr 12, 2007 7:14 pm   
 
Thanks for the tips on the SQLite tools bortaS. I was getting no where with the command line tool on the sqlite website.
_________________
Asati di tempari!
Reply with quote
Zugg
MASTER


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

PostPosted: Thu Apr 12, 2007 8:32 pm   
 
I found the problem! There was a recursive loop in one of the CMUD routines. This was causing a stack overflow, which explains why you weren't getting any Send Bug report button (because it couldn't recover from this kind of error). These kind of errors are notoriously hard to track down. But I finally got it to happen while Delphi was running.

After an hour or so, I tracked down the routine that had the recursive loop. It's a routine that checks to see if a setting (like a trigger) is contained within a certain class...including parent classes. So it checks the class, then checks the parent class, then it's parent, etc.

Looking at your PKG file, your main window object, which has an ID value of zero, also has a Parent value of zero. This means that the parent is pointing back to itself, so it keeps recursively trying to get it's parent class.

Obviously my routine needs to be fixed so that it can detect this kind of loop. I'm not sure what caused the original problem of getting the parent set to zero. All windows/modules are supposed to have a parent of -1 (the root). Perhaps it was caused via some bugs in the drag/drop or copy/move routines in the package editor.

In any case, I have fixed it so that this doesn't happen anymore.

What was also interesting was that this same problem explains all of your other crashes too. Setting the Guild window to be visible was causing the Reset routine to run, which goes through all classes and sets their enabled flag to their default loading value. This shouldn't have been called (it will also reset all triggers and variables to their loading state). But the window with the parent of zero was causing the Reset routine to stack overflow.

There was also a case in loading the map where the Reset routine could be called. This could cause a stack overflow when loading the mapper.

This was a really nasty bug, so I'm glad you caught it. This is probably one of the main bugs causing stability problems after getting a corrupted package file like this. Hopefully I can eventually track down how the parent got a value of zero for your window. But at least the stack overflow should be fixed in 1.27 now.
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Thu Apr 12, 2007 9:28 pm   
 
Glad you got that fix in Zugg. I'm itching to get my hands on 1.27.
_________________
Asati di tempari!
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Fri Apr 13, 2007 1:04 am   
 
Thank you very much Zugg, when I first saw the length of your post I was hoping I didn't cause more grief for you through some mistake of my own rather than a legitimate problem. You are one hell of a bug hunter Zugg :).
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Sat Apr 14, 2007 9:18 pm   
 
I guess i should have asked this earlier, so what would I do to my package file to fix this?

-I just had to import my old package, the new one was so corrupt and wasn't being fixed even though it stopped crashing. Thank you Thunderbird for saving attachments in outgoing mail.
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion 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