|
Larkin Wizard
Joined: 25 Mar 2003 Posts: 1113 Location: USA
|
Posted: Thu Dec 07, 2006 4:18 pm
URGENT: [1.20] Variable assignment on command-line errs |
1. Clean install of 1.20
2. Open CMUD and hit ESC to get to empty session
3. Enter "blah = 2" on command line (no quotes, of course)
Result:
"Error parsing command: Access violation at address 00405BA4 in module 'cMUD.exe'. Write of address 00000008"
I get the same when I do any var = value on the command line, regardless of the use of quotes, braces, etc.
Solution:
#VAR blah 1
blah = 2
It seems the variable is undefined and the blah = 2 command does not auto-create it using the same behavior as the #VAR. This is counter-intuitive to me and contrary to the zMUD behavior, so I felt it worth noting here. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Dec 07, 2006 6:58 pm |
I cannot reproduce this one here. Anyone else?
|
|
|
|
ecourt Apprentice
Joined: 29 Dec 2000 Posts: 146 Location: USA
|
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Dec 07, 2006 7:54 pm |
Yeah, but that bug link you reported was also fixed in 1.20. But it looked like Larkin was just running CMUD from a fresh install. So I'm not sure what's going on.
|
|
|
|
slicertool Magician
Joined: 09 Oct 2003 Posts: 459 Location: USA
|
Posted: Thu Dec 07, 2006 8:14 pm |
Mine isn't doing it, but I've got an upgraded version.
|
|
|
|
Larkin Wizard
Joined: 25 Mar 2003 Posts: 1113 Location: USA
|
Posted: Thu Dec 07, 2006 8:46 pm |
That linked thread is related to the expansion of variables (in particular, system variables) in an alias. I was just executing 'blah = 2' on the command-line to set the value of a previously un-created variable and it erred on me.
Just to test it a little more, I removed my "My MUDs" folder where I stored my data files and ran CMUD to have it re-create the default packages. It still gives me the exception when I do 'blah = 2' after hitting ESC at the session window. Also, please note that this only happens when this is the first command I execute after opening a 'blank' session. If I import a test script or two, the 'blah = 2' executes fine, even if the variable is not defined. It's an odd error, I admit, so if there's anything more I can do to help track this down, let me know. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Dec 07, 2006 8:55 pm |
Did you delete the directory where the CMUD.EXE program files are located and then reinstall? All I can think of is that the default.pkg file is corrupted, and that is stored with the EXE file, so removing the My MUDs folder won't help with that.
|
|
|
|
Larkin Wizard
Joined: 25 Mar 2003 Posts: 1113 Location: USA
|
Posted: Thu Dec 07, 2006 9:21 pm |
Yes. That's how I do all the CMUD installations now, as I'm aware of the corruptions that can occur. I'll test it one more time, however, by removing every CMUD-related file I can think of and trying this again.
|
|
|
|
ecourt Apprentice
Joined: 29 Dec 2000 Posts: 146 Location: USA
|
Posted: Thu Dec 07, 2006 11:10 pm |
ahhh -- actually I was able to reproduce this ...
that's just a syntax I've never used ---
it looks like the variable has to be declared before you can use the blah=2 syntax
do #var bla 2
then you can do bla=2
now try ble=1 -- you get an error, until you declare the variable with #var |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Thu Dec 07, 2006 11:45 pm |
Nope, still not getting it here. Wierd...this one is driving me crazy!
|
|
|
|
ecourt Apprentice
Joined: 29 Dec 2000 Posts: 146 Location: USA
|
Posted: Fri Dec 08, 2006 12:13 am |
try it this way , open cmud -- click the X on the sessions screen, which will leave you with a untitled unconnected session.
now type lala = 4
see if that does it |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Dec 08, 2006 4:35 am |
Nope, that still works fine for me here.
Can anyone else PLEASE help with this one and test it? I need to know how widespread this problem is. I have no idea what could possibly be causing it. |
|
|
|
Arminas Wizard
Joined: 11 Jul 2002 Posts: 1265 Location: USA
|
Posted: Fri Dec 08, 2006 4:48 am |
It gave me a parse error. I sent a bug report.
|
|
_________________ Arminas, The Invisible horseman
Windows 7 Pro 32 bit
AMD 64 X2 2.51 Dual Core, 2 GB of Ram |
|
|
|
slicertool Magician
Joined: 09 Oct 2003 Posts: 459 Location: USA
|
Posted: Fri Dec 08, 2006 4:49 am |
Still doesn't do it on mine. I'm using 1.20 upgraded from 1.19 which has been upgraded multiple times from back at 1.16ish with one session. I can't make it do it in the real session, in the untitled session, using X or Esc.
I tried assigning a couple different values and did alphanumeric in both the name and value.
Can NOT reproduce Larkin's error. |
|
|
|
jed Adept
Joined: 18 Dec 2005 Posts: 246
|
Posted: Fri Dec 08, 2006 4:49 am |
I just did as ecourt suggested, and entered lala = 4 in an unconnected session and got the "error parsing command" access violation paste error. Using winXP, 1.20 with data dir set to my games/cmud
|
|
|
|
Arminas Wizard
Joined: 11 Jul 2002 Posts: 1265 Location: USA
|
Posted: Fri Dec 08, 2006 4:54 am |
I uninstalled, deleted the original cMud Directory, I didn't originally have cMud installed into program files anyway.
|
|
_________________ Arminas, The Invisible horseman
Windows 7 Pro 32 bit
AMD 64 X2 2.51 Dual Core, 2 GB of Ram |
|
|
|
slicertool Magician
Joined: 09 Oct 2003 Posts: 459 Location: USA
|
Posted: Fri Dec 08, 2006 4:56 am |
My settings are set to the program directory... that might be the cause of the error. Will be archiving packages and uninstalling, and doing a fresh install to check.
|
|
|
|
LevelZero Beginner
Joined: 17 Nov 2006 Posts: 12
|
Posted: Fri Dec 08, 2006 5:37 am |
Tried the same, fresh CMUD 1.20 install, startup, press ESC on the "Sessions" screen to get a blank unconnected session, lala = 4, "error parsing command".
|
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Dec 08, 2006 5:56 am |
OK, you guys know that 1.20 isn't properly creating the My Games/CMUD directory, right?
I think we need to forget about this error until I release 1.21. I think it's related to the problem with it not creating the My Games folder, and since I've already got that fixed on my system here, I still can't reproduce any problem. Let's just hope it is fixed in 1.21 already. |
|
|
|
nexela Wizard
Joined: 15 Jan 2002 Posts: 1644 Location: USA
|
Posted: Fri Dec 08, 2006 6:54 am |
Problem still exists in 1.21
Open Cmud, hit esc, type blah=2
XP sp2 used the MyGames/Cmud install choice |
|
|
|
Larkin Wizard
Joined: 25 Mar 2003 Posts: 1113 Location: USA
|
Posted: Fri Dec 08, 2006 12:55 pm |
Okay. It only happens when the data directory is anything other than C:\Program Files\CMUD (or wherever you install CMUD). I did a clean install of 1.21 and selected the same directory for data and program and it didn't cause the error. I then uninstalled, removed the CMUD directory, and re-installed with the data directory being C:\MUDs this time, and the error was there.
|
|
|
|
ecourt Apprentice
Joined: 29 Dec 2000 Posts: 146 Location: USA
|
Posted: Fri Dec 08, 2006 1:02 pm |
I just did a upgrade to 1.21, and still have the same problem.
My datadir is my documents/my games/cmud |
|
|
|
Fang Xianfu GURU
Joined: 26 Jan 2004 Posts: 5155 Location: United Kingdom
|
Posted: Fri Dec 08, 2006 1:44 pm |
Also getting this even if the My Games directory exists. It's not a "send error" crash, it's just an "error parsing command" but the bit where it explains the error says "access violation"
|
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Dec 08, 2006 6:08 pm |
I finally reproduced this.
As people have mentioned, it only happens when selecting the My Games option in the installer. And it only happens on a clean install. I don't know what's causing it yet, but at least there is some hope that I will figure it out now.
It's going to be a pain because I haven't gotten it to fail when running within the Delphi debugger yet. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Dec 08, 2006 10:02 pm |
I think I might have found an uninitialized variable in the compiler that was causing this problem. That would explain why it was so system dependant. I ran into it when I was testing some other "var = xxx" syntax. So hopefully this is finally fixed in 1.22.
|
|
|
|
|
|