diff --git a/SystemTools.cxx b/SystemTools.cxx
index 23d533140bb6f5755d43f3e77be36a86ad77ea3c..7d088b19210b6cf1b391d16ba9686c9bc0c11b16 100644
--- a/SystemTools.cxx
+++ b/SystemTools.cxx
@@ -118,9 +118,14 @@ 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)
 {
   #if defined(__BORLANDC__)