From d92dcccb060dcd5e73fd27d9470972a5c5f76994 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 11 Jun 2003 11:00:59 -0400 Subject: [PATCH] BUG: Uninitialized std::string returns bad pointers from c_str() on some platforms. --- Source/cmLocalUnixMakefileGenerator.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/cmLocalUnixMakefileGenerator.cxx b/Source/cmLocalUnixMakefileGenerator.cxx index badaa0ae3..e5227657e 100644 --- a/Source/cmLocalUnixMakefileGenerator.cxx +++ b/Source/cmLocalUnixMakefileGenerator.cxx @@ -1951,7 +1951,7 @@ void cmLocalUnixMakefileGenerator::OutputCustomRules(std::ostream& fout) cmCustomCommand *c = (*i)->GetCustomCommand(); // escape spaces and convert to native slashes path for // the command - const char* comment = c->GetComment().c_str(); + std::string comment = c->GetComment(); std::string command = c->GetCommand(); cmSystemTools::ReplaceString(command, "/./", "/"); command = cmSystemTools::ConvertToOutputPath(command.c_str()); @@ -1993,7 +1993,7 @@ void cmLocalUnixMakefileGenerator::OutputCustomRules(std::ostream& fout) if (processedOutputs.find(c->GetOutput()) == processedOutputs.end()) { this->OutputMakeRule(fout, - (*comment?comment:"Custom command"), + (comment.size()?comment.c_str():"Custom command"), c->GetOutput().c_str(), depends.c_str(), command.c_str());