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
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Tue Sep 07, 2010 7:17 pm   

[3.25-3.30] Integer Overflow
 
I can't really report this as a bug although there is an issue somewhere. The reason is it locked up Cmud on me and I could not even save the bug report. The following is what happened.

I enabled Cmud to display the timestamps on screen. The format I used was hh:nn:ss:zzz. Then I got an Integer overflow error and Cmud crashed. I was able to look at the bug report before Cmud completely froze and the top four lines on the stack showed DateTimeStamp and concerned timestamp. I'm sorry I only got to see it for a second or so. When I went to save Cmud just locked up and I had to kill the process through task manager. Anyway, I just disabled displaying of timestamps and the error never happened again. However, I was able to have Cmud log timestamps without issue. Also I was connected at the time so I had lines being displayed and timestamps being displayed. I also had another person who was speaking with me disable the display of timestamps and Cmud crashed on them as soon as they changed the option.

Again I don't really know where the issue is and was unable to save the crash report. It would be nice if Cmud automatically saved the crash reports to a file.


Last edited by oldguy2 on Thu Oct 14, 2010 2:21 am; edited 1 time in total
Reply with quote
MattLofton
GURU


Joined: 23 Dec 2000
Posts: 4834
Location: USA

PostPosted: Tue Sep 07, 2010 11:36 pm   
 
It's kind of a bad idea to do things that change the width of the scrollback buffer in any way while connected. The error probably happened because you were in the middle of a resize event with a REALLY big buffer when the new lines came (which probably were stuck using the old width and thus triggering more resize stuff).
_________________
EDIT: I didn't like my old signature
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Wed Sep 08, 2010 1:11 am   
 
True but that wasn't the case with me. I had set to show timestamps before I connected and wasn't do anything at all. The only thing I did was open a folder on my PC to look at something and Cmud popped up the Integer overflow error and crashed.
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Wed Sep 08, 2010 7:58 am   
 
Well I finally caught this after it crashed on me again.

Code:
date/time         : 2010-09-08, 02:52:18, 390ms
operating system  : Windows XP Service Pack 3 build 2600
system language   : English
system up time    : 40 minutes 49 seconds
program up time   : 34 minutes 26 seconds
processor         : AMD Athlon(tm) 64 Processor 3800+
physical memory   : 1354/2047 MB (free/total)
free disk space   : (C:) 122.84 GB
display mode      : 1440x900, 32 bit
process id        : $7d4
allocated memory  : 44.81 MB
executable        : cMUD.exe
exec. date/time   : 2010-09-01 17:17
version           : 3.25.0.0
compiled with     : BCB 2006/07
madExcept version : 3.0k
callstack crc     : $4a74fbb2, $b5a47966, $b5a47966
exception number  : 1
exception class   : EIntOverflow
exception message : Integer overflow.

Main ($8c4):
00456745 +025 cMUD.exe   SysUtils            DateTimeToTimeStamp
004568e4 +01c cMUD.exe   SysUtils            DecodeTime
00456ea5 +031 cMUD.exe   SysUtils            GetTime
00457471 +329 cMUD.exe   SysUtils            AppendFormat
00457926 +026 cMUD.exe   SysUtils            DateTimeToString
00cec4d3 +62b cMUD.exe   MAIN     11684 +104 TMUDForm.ConnectTimerTimer
00c9a8b8 +06c cMUD.exe   PARENT    6754   +9 TParentForm.SystemTimerTimer
00497aaf +00f cMUD.exe   ExtCtrls            TTimer.Timer
00497993 +02b cMUD.exe   ExtCtrls            TTimer.WndProc
0047d4ac +014 cMUD.exe   Classes             StdWndProc
7e4196c2 +00a USER32.dll                     DispatchMessageA
004aa7f4 +0fc cMUD.exe   Forms               TApplication.ProcessMessage
004aa82e +00a cMUD.exe   Forms               TApplication.HandleMessage
004aab23 +0b3 cMUD.exe   Forms               TApplication.Run
00e4ba8c +088 cMUD.exe   CMUD       372  +20 initialization
7c912c21 +069 ntdll.dll                      RtlUnicodeStringToAnsiString
Reply with quote
Zugg
MASTER


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

PostPosted: Wed Sep 08, 2010 4:22 pm   
 
I wasn't able to get it to crash here. Can you give more of a step-by-step procedure for how you got it to crash again?

The crash is happening pretty deep into the SysUtils unit, which is a Delphi unit that handles Windows-related stuff. Something I don't have source code control over. So I really have no idea how to make this happen.

I opened a blank session, then went into the Scrollback preferences and turned on the Timestamps, then entered hh:nn:ss:zzz for the format. So tell me what you did differently from that.
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Wed Sep 08, 2010 7:09 pm   
 
Well I wasn't do anything. That's what is odd. I've noticed it happens when I open a file or something on my PC though. Like this time I opened a text file (previous Cmud log) and was reviewing it and it crashed. Last time I opened folder or something and it crashed with the same error. Perhaps it is just coincidence but that's the only thing I can think of. Other than that I am simply connected and my character is just standing there. In fact prior to that I had got into some full blown combat and it did not crash. Also I did not have timestamps displayed this time when it crashed. However, they were being written to the log. Anyway, that is the same error I got last time and pretty much identical bug report. At least it looks identical.

Here is exactly what I did.

1. Opened My Documents.
2. Opened My Games
3. Opened my session folder.
4. Opened the prior log file.
5. Clicked on the log text file and was looking through it.

Then it popped up the Integer overflow error and crashed.

I guess you got my PC specs from the bug report already.
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Wed Sep 08, 2010 7:30 pm   
 
What would cause "Integer overflow"? The exceptions aren't that descriptive and don't say what int or byte it was working on and so on. Razz Oh yes one more thing that is probably important. When it happens I get the Greek Lunate Epsilon symbol shows up in the command line. Well actually it is either U+03F5 or the Cyrillic Ukrainian ye U+0404 or the "element of" U+2208. They all kind of look identical and all deal with mathematics? I am certain it is one of them. It showed it in the command line when it crashed both times. Maybe it's closer to U2208.
Reply with quote
Zugg
MASTER


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

PostPosted: Wed Sep 08, 2010 8:52 pm   
 
Hmm, I looked at the line of the crash in MAIN.PAS where it calls the FormatDateTime Delphi routine. It actually doesn't have anything to do with the Timestamp display. It is the display of the Connection Time where the crash is happening. CMUD calls this:
Code:
S := FormatDateTime( 'h:nn:ss', ConnTotal);

Where ConnTotal is the total time connected to the session.

Now, in your instructions shown above, it doesn't look like you ever actually connected to the session yet. I wonder if this error occurs if ConnTotal is negative or something odd like that. This routine is called within the ConnectTimerTimer event handler, which runs when the 1 second timer in CMUD goes off. So maybe the timer was going off before your session was properly initialized or something?

In any case, I will play with this section of code and see what I can do.
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Thu Oct 14, 2010 2:23 am   
 
This continues to plague me.

Code:
date/time         : 2010-10-13, 21:15:28, 640ms
operating system  : Windows XP Service Pack 3 build 2600
system language   : English
system up time    : 22 hours 35 minutes
program up time   : 5 minutes 10 seconds
processor         : AMD Athlon(tm) 64 Processor 3800+
physical memory   : 1379/2047 MB (free/total)
free disk space   : (C:) 124.22 GB
display mode      : 1440x900, 32 bit
process id        : $9a4
allocated memory  : 51.42 MB
executable        : cMUD.exe
exec. date/time   : 2010-10-01 16:35
version           : 3.30.0.0
compiled with     : BCB 2006/07
madExcept version : 3.0k
callstack crc     : $4a74fbb2, $f860968e, $f860968e
exception number  : 1
exception class   : EIntOverflow
exception message : Integer overflow.

Main ($934):
00456775 +025 cMUD.exe   SysUtils            DateTimeToTimeStamp
00456914 +01c cMUD.exe   SysUtils            DecodeTime
00456ed5 +031 cMUD.exe   SysUtils            GetTime
004574a1 +329 cMUD.exe   SysUtils            AppendFormat
00457956 +026 cMUD.exe   SysUtils            DateTimeToString
00d32643 +73b cMUD.exe   MAIN     11840 +118 TMUDForm.ConnectTimerTimer
00ce002c +06c cMUD.exe   PARENT    6768   +9 TParentForm.SystemTimerTimer
00497adf +00f cMUD.exe   ExtCtrls            TTimer.Timer
004979c3 +02b cMUD.exe   ExtCtrls            TTimer.WndProc
0047d4dc +014 cMUD.exe   Classes             StdWndProc
7e4196c2 +00a USER32.dll                     DispatchMessageA
004aa824 +0fc cMUD.exe   Forms               TApplication.ProcessMessage
004aa85e +00a cMUD.exe   Forms               TApplication.HandleMessage
004aab53 +0b3 cMUD.exe   Forms               TApplication.Run
00e93fb4 +088 cMUD.exe   CMUD       372  +20 initialization
7c912c21 +069 ntdll.dll                      RtlUnicodeStringToAnsiString

error details:
Unknown. Nothing was happening at all.
Reply with quote
oldguy2
Wizard


Joined: 17 Jun 2006
Posts: 1201

PostPosted: Thu Oct 14, 2010 2:26 am   
 
Isn't the exec. date/time wrong?
Reply with quote
Zugg
MASTER


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

PostPosted: Thu Oct 14, 2010 6:47 pm   
 
Looks like I trapped the original error, but then the error happens again later down in that same routine. So I'll add another error trap there.
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