From 295eeaa1cf5bbf3ec267e2950383eeffc93dbfa5 Mon Sep 17 00:00:00 2001
From: Bill Hoffman <bill.hoffman@kitware.com>
Date: Thu, 27 Apr 2006 15:26:53 -0400
Subject: [PATCH] ENH: handle running from a directory that has been deleted

---
 SystemTools.cxx | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/SystemTools.cxx b/SystemTools.cxx
index 274e3335..82c8dc9a 100644
--- a/SystemTools.cxx
+++ b/SystemTools.cxx
@@ -118,7 +118,12 @@ inline int Rmdir(const char* dir)
 }
 inline const char* Getcwd(char* buf, unsigned int len)
 {
-  return _getcwd(buf, len);
+  const char* ret _getcwd(buf, len);
+  if(!ret)
+    {
+    fprintf(stderr, "No current working directory.\n");
+    abort();
+    }
 }
 inline int Chdir(const char* dir)
 {
@@ -152,8 +157,15 @@ inline int Rmdir(const char* dir)
 }
 inline const char* Getcwd(char* buf, unsigned int len)
 {
-  return getcwd(buf, len);
+  const char* ret = getcwd(buf, len);
+  if(!ret)
+    {
+    fprintf(stderr, "No current working directory\n");
+    abort();
+    }
+  return ret;
 }
+
 inline int Chdir(const char* dir)
 {
   return chdir(dir);
-- 
GitLab