From 29436629dad875cd99cd31cc2f8499f3623effb3 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Sat, 16 Jun 2012 00:44:07 +0000 Subject: [PATCH] Don't call 'FilesToRemove[0]' when the vector is empty, even to compute the address of it. Found by a checking STL implementation used on a dragonegg builder. Sorry about this one. =/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158582 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Support/Unix/Signals.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Support/Unix/Signals.inc b/lib/Support/Unix/Signals.inc index b2e5fd8b0a5..519511685dd 100644 --- a/lib/Support/Unix/Signals.inc +++ b/lib/Support/Unix/Signals.inc @@ -189,7 +189,7 @@ void llvm::sys::SetInterruptFunction(void (*IF)()) { bool llvm::sys::RemoveFileOnSignal(const sys::Path &Filename, std::string* ErrMsg) { SignalsMutex.acquire(); - std::string *OldPtr = &FilesToRemove[0]; + std::string *OldPtr = FilesToRemove.empty() ? 0 : &FilesToRemove[0]; FilesToRemove.push_back(Filename.str()); // We want to call 'c_str()' on every std::string in this vector so that if -- 2.34.1