# HG changeset patch # User smxx # Date 1266499404 0 # Node ID db7c35a0e9c1eb841ba13dd4e9a061e9768bd66f # Parent 2d25e49bc2e866387779b1a69e5d403a5c7c8c3c Engine: * Removed memory leaks displaying usage / syntax diff -r 2d25e49bc2e8 -r db7c35a0e9c1 hedgewars/hwengine.pas --- a/hedgewars/hwengine.pas Thu Feb 18 01:02:28 2010 +0000 +++ b/hedgewars/hwengine.pas Thu Feb 18 13:23:24 2010 +0000 @@ -437,7 +437,6 @@ for i:=0 to ParamCount do Write(ParamStr(i) + ' '); WriteLn(); - halt(1); end; //////////////////// @@ -509,7 +508,7 @@ cFullScreen:= ParamStr(5) = '1'; cShowFPS:= ParamStr(6) = '1'; end - else DisplayUsage; + else GameType:= gmtSyntax; end end; end; @@ -531,7 +530,7 @@ cLocaleFName:= ParamStr(10); cFullScreen:= ParamStr(11) = '1'; end - else DisplayUsage; + else GameType:= gmtSyntax; end; 15: begin PathPrefix:= ParamStr(1); @@ -554,9 +553,9 @@ val(ParamStr(14), cTimerInterval); cReducedQuality:= ParamStr(15) = '1'; end - else DisplayUsage; + else GameType:= gmtSyntax; end; - else DisplayUsage; + else GameType:= gmtSyntax; end; {$IFDEF DEBUGFILE} @@ -580,8 +579,13 @@ Randomize(); if GameType = gmtLandPreview then GenLandPreview() + else if GameType = gmtSyntax then DisplayUsage() else Game(); freeEverything(); - ExitCode:= 0; + + if GameType = gmtSyntax then + ExitCode:= 1 + else + ExitCode:= 0; {$ENDIF} end. diff -r 2d25e49bc2e8 -r db7c35a0e9c1 hedgewars/uConsts.pas --- a/hedgewars/uConsts.pas Thu Feb 18 01:02:28 2010 +0000 +++ b/hedgewars/uConsts.pas Thu Feb 18 13:23:24 2010 +0000 @@ -41,7 +41,7 @@ TGameState = (gsLandGen, gsStart, gsGame, gsChat, gsConfirm, gsExit); - TGameType = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview); + TGameType = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview, gmtSyntax); TPathType = (ptNone, ptData, ptGraphics, ptThemes, ptCurrTheme, ptTeams, ptMaps, ptMapCurrent, ptDemos, ptSounds, ptGraves, ptFonts, ptForts,