summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Source/cmGeneratedFileStream.cxx4
-rw-r--r--Source/cmGeneratedFileStream.h2
-rw-r--r--Source/cmGlobalVisualStudio7Generator.cxx7
3 files changed, 6 insertions, 7 deletions
diff --git a/Source/cmGeneratedFileStream.cxx b/Source/cmGeneratedFileStream.cxx
index 6fe889df73..1e470c8743 100644
--- a/Source/cmGeneratedFileStream.cxx
+++ b/Source/cmGeneratedFileStream.cxx
@@ -31,7 +31,7 @@ cmGeneratedFileStream::cmGeneratedFileStream(const char* name,
bool copy_if_different,
bool quiet):
cmGeneratedFileStreamBase(name, copy_if_different),
- std::ofstream(m_TempName.c_str())
+ Stream(m_TempName.c_str())
{
// Check if the file opened.
if(!*this && !quiet)
@@ -49,7 +49,7 @@ cmGeneratedFileStream::~cmGeneratedFileStream()
// stream will be destroyed which will close the temporary file.
// Finally the base destructor will be called to replace the
// destination file.
- m_Okay = *this;
+ m_Okay = (*this)?true:false;
}
//----------------------------------------------------------------------------
diff --git a/Source/cmGeneratedFileStream.h b/Source/cmGeneratedFileStream.h
index b12461f6af..f4473702b2 100644
--- a/Source/cmGeneratedFileStream.h
+++ b/Source/cmGeneratedFileStream.h
@@ -61,6 +61,8 @@ class cmGeneratedFileStream: private cmGeneratedFileStreamBase,
public std::ofstream
{
public:
+ typedef std::ofstream Stream;
+
/**
* The constructor takes the name of the file to be generated. It
* automatically generates a name for the temporary file. The
diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx
index ecad472083..0184833fef 100644
--- a/Source/cmGlobalVisualStudio7Generator.cxx
+++ b/Source/cmGlobalVisualStudio7Generator.cxx
@@ -289,15 +289,12 @@ void cmGlobalVisualStudio7Generator::OutputSLNFile(cmLocalGenerator* root,
fname += "/";
fname += root->GetMakefile()->GetProjectName();
fname += ".sln";
- cmGeneratedFileStream fout(fname.c_str());
+ cmGeneratedFileStream fout(fname.c_str(), true);
if(!fout)
{
- cmSystemTools::Error("Error can not open DSW file for write: ",
- fname.c_str());
- cmSystemTools::ReportLastSystemError("");
return;
}
- this->WriteSLNFile(fout.GetStream(), root, generators);
+ this->WriteSLNFile(fout, root, generators);
}
// output the SLN file