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
David256
Beginner


Joined: 07 Nov 2006
Posts: 22

PostPosted: Sun Nov 18, 2007 5:45 am   

[2.12Pro] Crash when assigning really long captions to buttons via a variable
 
I have the following button:
Code:
<button autosize="false" width="300" height="20" autopos="false" left="200" toolstyle="true" gaugelowcol="red" gaugebackcol="silver" priority="11" id="642">
  <caption>@battlequeue</caption>
</button>

On a new instance on cmud, if I go battlequeue=aaaaa.... (about 300 'a's) I get an exception.
If I make it even longer (about 500+ characters) I get an error window saying
"Error: Access violation at 0x61616161 (tried to read from 0x61616161), program terminated."

If I leave battlequeue set to that long thing when I quit, then CMUD crashes immediately every time I open the session.

(Note 0x61 is the ascii code of 'a'! If I make the string "bbbb...." then it tries to read 0x62626262 etc)

Code:
date/time         : 2007-11-18, 16:37:17, 806ms
user name         : David
operating system  : Windows NT New build 6000
system language   : English
system up time    : 5 hours 4 minutes
program up time   : 24 seconds
processors        : 4x Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
physical memory   : 2696/4094 MB (free/total)
free disk space   : (C:) 267.55 GB
display mode      : 1920x1200, 32 bit
process id        : $700
allocated memory  : 134.46 MB
executable        : cMUDPro.exe
exec. date/time   : 2007-11-17 19:07
version           : 2.12.0.0
madExcept version : 3.0b
callstack crc     : $58853478, $09a7ae99, $bd1f2f44
exception number  : 1
exception class   : EAccessViolation
exception message : Access violation at address 00404BDE in module 'cMUDPro.exe'. Read of address 61616161.

Main ($ac0):
00404bde +0006 cMUDPro.exe  System                    TObject.Free
00778894 +1320 cMUDPro.exe  explbtn         1459 +365 TExplorerButton.Paint
004053aa +002a cMUDPro.exe  System                    @HandleFinally
7761b57a +0105 ntdll.dll                              RtlUnwind
0040519e +00d2 cMUDPro.exe  System                    @HandleAnyException
775fee52 +000a ntdll.dll                              KiUserExceptionDispatcher
0050f4fe +005a cMUDPro.exe  Controls        8918   +6 TCustomControl.PaintWindow
00509f8a +0052 cMUDPro.exe  Controls        6402   +4 TWinControl.PaintHandler
0050a5b0 +004c cMUDPro.exe  Controls        6547   +6 TWinControl.WMPaint
0050f48f +001b cMUDPro.exe  Controls        8907   +2 TCustomControl.WMPaint
0050602f +01df cMUDPro.exe  Controls        4645  +53 TControl.WndProc
00509d5e +018e cMUDPro.exe  Controls        6342  +33 TWinControl.WndProc
00509930 +0034 cMUDPro.exe  Controls        6237   +3 TWinControl.MainWndProc
0047ff58 +0014 cMUDPro.exe  Classes        10966   +8 StdWndProc
775fee2b +002b ntdll.dll                              KiUserCallbackDispatcher
76c7cb9a +003f USER32.dll                             UpdateWindow
0050ce31 +001d cMUDPro.exe  Controls        7736   +1 TWinControl.Update
0050ce50 +0014 cMUDPro.exe  Controls        7742   +2 TWinControl.Repaint
00778a28 +0060 cMUDPro.exe  explbtn         1521   +5 TExplorerButton.SetCaption
00dec23b +04ab cMUDPro.exe  PrefDat         8546  +84 ButtonRec.Invalidate
00d0d639 +00f9 cMUDPro.exe  PARENT         11657  +26 TParentForm.WMInvalidatePref
0050602f +01df cMUDPro.exe  Controls        4645  +53 TControl.WndProc
00509d5e +018e cMUDPro.exe  Controls        6342  +33 TWinControl.WndProc
00526e3c +0478 cMUDPro.exe  Forms           3098 +103 TCustomForm.WndProc
00c9fa1c +0020 cMUDPro.exe  DXSounds        2013   +9 TCustomDXSound.FormWndProc
00c9d178 +000c cMUDPro.exe  DXClass          572   +1 TControlSubClass.WndProc
00509930 +0034 cMUDPro.exe  Controls        6237   +3 TWinControl.MainWndProc
0047ff58 +0014 cMUDPro.exe  Classes        10966   +8 StdWndProc
76c7e350 +0016 USER32.dll                             CallWindowProcA
006d6553 +00a7 cMUDPro.exe  aqDockingUtils  1728   +7 CallDefWndProc
006d6641 +00dd cMUDPro.exe  aqDockingUtils  1776  +41 TaqWindowEventFilter.WndProc
0047ff58 +0014 cMUDPro.exe  Classes        10966   +8 StdWndProc
76c795a4 +000a USER32.dll                             DispatchMessageA
0052eee4 +00ac cMUDPro.exe  Forms           6873  +13 TApplication.ProcessMessage
0052ef2b +000f cMUDPro.exe  Forms           6892   +1 TApplication.HandleMessage
0052f1c6 +00a6 cMUDPro.exe  Forms           6976  +16 TApplication.Run
00e75c08 +0088 cMUDPro.exe  cMUDPro          349  +19 initialization
759419ef +000c kernel32.dll                           BaseThreadInitThunk
Reply with quote
Tech
GURU


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

PostPosted: Sun Nov 18, 2007 6:55 pm   
 
Confirmed.
_________________
Asati di tempari!
Reply with quote
Zugg
MASTER


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

PostPosted: Mon Nov 19, 2007 5:49 pm   
 
Yes, this has always been a problem. It's a Windows API limit on the amount of text that can be displayed in a button like this. I'll see if I can at least trap it so that it doesn't crash. But really huge captions are not going to display on a button that is too small.
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