}
 bool edspIndex::OpenListFile(FileFd &Pkg, std::string const &FileName)
 {
-   if (FileName.empty() == false && FileName != "stdin")
+   if (FileName.empty() == false && FileName != "/nonexistent/stdin")
       return pkgDebianIndexRealFile::OpenListFile(Pkg, FileName);
    if (Pkg.OpenDescriptor(STDIN_FILENO, FileFd::ReadOnly) == false)
       return _error->Error("Problem opening %s",FileName.c_str());
 
 {
    if (StatusFile == 0)
    {
-      if (_config->Find("edsp::scenario", "") == "stdin")
-        StatusFile = new edspIndex("stdin");
+      if (_config->Find("edsp::scenario", "") == "/nonexistent/stdin")
+        StatusFile = new edspIndex("/nonexistent/stdin");
       else
         StatusFile = new edspIndex(_config->FindFile("edsp::scenario"));
    }
 
    return Target.Description;
 }
 
-pkgDebianIndexRealFile::pkgDebianIndexRealFile(std::string const &File, bool const Trusted) :/*{{{*/
-   pkgDebianIndexFile(Trusted), d(NULL), File(flAbsPath(File))
+pkgDebianIndexRealFile::pkgDebianIndexRealFile(std::string const &pFile, bool const Trusted) :/*{{{*/
+   pkgDebianIndexFile(Trusted), d(NULL)
 {
+   if (pFile == "/nonexistent/stdin")
+      File = pFile;
+   else
+      File = flAbsPath(pFile);
 }
                                                                        /*}}}*/
 // IndexRealFile::Size - Return the size of the index                  /*{{{*/
 
 
        _config->Set("APT::System", "Debian APT solver interface");
        _config->Set("APT::Solver", "internal");
-       _config->Set("edsp::scenario", "stdin");
+       _config->Set("edsp::scenario", "/nonexistent/stdin");
        int input = STDIN_FILENO;
        FILE* output = stdout;
        SetNonBlock(input, false);