anchor.diff:        });
       });
       
  -    return c.future;
  +    return c.future.then((String path) {
  +      // Append current working directory for the running Dart process
  +      Path processDir = new Path(Directory.current.path);
  +      String fullPath = processDir.append(path).toNativePath();
  +      
  +      _log("Append current process working directory:");
  +      _log("     File to spawn:     $path");
  +      _log("     Process directory: ${processDir.toString()}");
  +      _log("     Full path:         $fullPath");
  +      
  +      return fullPath;
  +    });
     }
   }
positive.code:       
        spawnFile.exists().then((bool fileExists) {
          if (fileExists) {
            // Get the full path and return it
            spawnFile.fullPath().then((String fullPath) {
              c.complete(fullPath);
            });
          } else {
            Set<Path> directoriesToCreate = new Set<Path>(); 
  
  
negative.code:               if (missingFiles.length > 0) {
                  _log("Download missing files from network:");
                  DartCodeDb.downloadFilesAndCreateLinks(missingFiles).then((_) {
                    c.complete(spawnFile.path);
                  });
                } else {
                  // Get the full path and return it
                  c.complete(spawnFile.path);
                }
              });
            });
  