From 85f3596400653a1ee611050f076800649dcf2227 Mon Sep 17 00:00:00 2001 From: Keywan Ghadami Date: Thu, 17 Dec 2015 11:17:28 +0100 Subject: [PATCH 1/2] dlang ide crashed on opening an workspace by selecting an dub file. E.g. when i tied to open the dlangide directory itself. the stacktrace shows that it tried to save some settings but the filename was null. So i changed the default settings filename in worspace.d file from null to WORKSPACE_EXTENSION. This way i was able to open the the workspace. I am new to Dlang and to this project so i might not get the hole picture here and doing something wrong, please double check if that the correct way to fix that. --- src/dlangide/workspace/workspace.d | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dlangide/workspace/workspace.d b/src/dlangide/workspace/workspace.d index 4b765c7..91d9835 100644 --- a/src/dlangide/workspace/workspace.d +++ b/src/dlangide/workspace/workspace.d @@ -58,7 +58,7 @@ class Workspace : WorkspaceItem { protected BuildConfiguration _buildConfiguration; protected ProjectConfiguration _projectConfiguration = ProjectConfiguration.DEFAULT; - this(IDEFrame frame, string fname = null) { + this(IDEFrame frame, string fname = WORKSPACE_EXTENSION) { super(fname); _workspaceFile = new SettingsFile(fname); _settings = new WorkspaceSettings(fname ? fname ~ WORKSPACE_SETTINGS_EXTENSION : null); From 136137aad83922e593d9b68f3d3aa9a6ac294813 Mon Sep 17 00:00:00 2001 From: Keywan Ghadami Date: Thu, 17 Dec 2015 14:30:28 +0100 Subject: [PATCH 2/2] printing the commandlineparamters when executing dub. --- src/dlangide/builders/builder.d | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dlangide/builders/builder.d b/src/dlangide/builders/builder.d index da65b41..8bb4ac6 100644 --- a/src/dlangide/builders/builder.d +++ b/src/dlangide/builders/builder.d @@ -66,7 +66,6 @@ class Builder : BackgroundOperationWatcher { ExternalProcessState state = _extprocess.state; if (state == ExternalProcessState.None) { _log.clear(); - _box.writeText("Running dub\n"d); char[] program = "dub".dup; char[][] params; char[] dir = _project.dir.dup; @@ -116,6 +115,8 @@ class Builder : BackgroundOperationWatcher { if (_verbose) params ~= "-v".dup; + auto text = "Running (in " ~ dir ~ "): " ~ program ~ " " ~ params.join(' ') ~ "\n"; + _box.writeText(to!dstring(text)); state = _extprocess.run(program, params, dir, _box, null); if (state != ExternalProcessState.Running) { _box.writeText("Failed to run builder tool\n"d);