DEADSOFTWARE

fix file opening from command line
authorDeaDDooMER <deaddoomer@deadsoftware.ru>
Mon, 22 May 2023 17:34:45 +0000 (20:34 +0300)
committerDeaDDooMER <deaddoomer@deadsoftware.ru>
Mon, 22 May 2023 17:34:45 +0000 (20:34 +0300)
src/editor/Editor.lpr
src/editor/f_main.pas

index b96ed23cf0adbf4d55c0d167410ffcd8685dead4..171c8564c25c7313e70c80e65dc5cd8d0ee7aa10 100644 (file)
@@ -120,15 +120,11 @@ uses
   end;
 
   procedure CheckParamFiles;
-    var i: Integer; path: AnsiString;
+    var i: Integer;
   begin
     i := ParamFileIndex;
     if i <= ParamCount then
-    begin
-      path := ParamStr(i);
-      if path <> '' then
-        OpenMap(path, '');
-    end;
+      StartMap := ParamStr(i);
   end;
 
   procedure InitLogs;
index ca323f69220c99e1b7d12e4918cea0edba16e6e7..8d11a3b7cb75b8d8b3c70f8be2d690b912c97fcc 100644 (file)
@@ -288,6 +288,7 @@ const
 
 var
   MainForm: TMainForm;
+  StartMap: String;
   OpenedMap: String;
   OpenedWAD: String;
 
@@ -6530,6 +6531,7 @@ begin
 end;
 
 procedure TMainForm.OnIdle(Sender: TObject; var Done: Boolean);
+  var f: AnsiString;
 begin
   // FIXME: this is a shitty hack
   if not gDataLoaded then
@@ -6545,6 +6547,12 @@ begin
     MainForm.FormResize(nil);
   end;
   Draw();
+  if StartMap <> '' then
+  begin
+    f := StartMap;
+    StartMap := '';
+    OpenMap(f, '');
+  end;
 end;
 
 procedure TMainForm.miMapPreviewClick(Sender: TObject);