Pass filepath to delve if program points to a file (#3016)
diff --git a/src/debugAdapter/goDebug.ts b/src/debugAdapter/goDebug.ts
index 98bdbd0..5ddfc90 100644
--- a/src/debugAdapter/goDebug.ts
+++ b/src/debugAdapter/goDebug.ts
@@ -483,7 +483,7 @@
const currentGOWorkspace = getCurrentGoWorkspaceFromGOPATH(env['GOPATH'], dirname);
dlvArgs.push(mode || 'debug');
- if (mode === 'exec') {
+ if (mode === 'exec' || (mode === 'debug' && !isProgramDirectory)) {
dlvArgs.push(program);
} else if (currentGOWorkspace && !launchArgs.packagePathToGoModPathMap[dirname]) {
dlvArgs.push(dirname.substr(currentGOWorkspace.length + 1));