Skip to content

Commit 7a23f2b

Browse files
author
philwalk
authored
fix for 2954 running script in root dir (#2988)
* fix for 2954 running script in root dir * added simplification suggested by @Gedochao
1 parent bf52053 commit 7a23f2b

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

modules/build/src/main/scala/scala/build/input/Inputs.scala

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ final case class Inputs(
124124
workspace / Constants.workspaceDirName / projectName / "jar"
125125
def docJarWorkDir: os.Path =
126126
workspace / Constants.workspaceDirName / projectName / "doc"
127+
127128
}
128129

129130
object Inputs {
@@ -152,7 +153,7 @@ object Inputs {
152153
updatedElems,
153154
defaultMainClassElemOpt,
154155
workspace,
155-
workspace.baseName,
156+
baseName(workspace),
156157
mayAppendHash = needsHash,
157158
workspaceOrigin = Some(workspaceOrigin),
158159
enableMarkdown = enableMarkdown,
@@ -384,7 +385,6 @@ object Inputs {
384385
}
385386
}.getOrElse((os.pwd, true, WorkspaceOrigin.Forced))
386387
}
387-
388388
val (workspace, needsHash, workspaceOrigin0) = forcedWorkspace match {
389389
case None => (inferredWorkspace, inferredNeedsHash, workspaceOrigin)
390390
case Some(forcedWorkspace0) =>
@@ -466,7 +466,7 @@ object Inputs {
466466
elements = Nil,
467467
defaultMainClassElement = None,
468468
workspace = workspace,
469-
baseProjectName = workspace.baseName,
469+
baseProjectName = baseName(workspace),
470470
mayAppendHash = true,
471471
workspaceOrigin = None,
472472
enableMarkdown = enableMarkdown,
@@ -475,4 +475,7 @@ object Inputs {
475475

476476
def empty(projectName: String): Inputs =
477477
Inputs(Nil, None, os.pwd, projectName, false, None, true, false)
478+
479+
def baseName(p: os.Path) = if (p == os.root) "" else p.baseName
480+
478481
}

modules/cli/src/main/scala/scala/cli/ScalaCli.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ object ScalaCli {
117117
try main0(args)
118118
catch {
119119
case e: Throwable if !isCI && !printStackTraces =>
120-
val workspace = CurrentParams.workspaceOpt.getOrElse(os.pwd)
120+
val workspace = CurrentParams.workspaceOpt.filter(os.isDir).getOrElse(os.pwd)
121121
val dir = workspace / Constants.workspaceDirName / "stacktraces"
122122
os.makeDir.all(dir)
123123
import java.time.Instant

0 commit comments

Comments
 (0)