For PR351:
* Move implementation of sys::PreventCoreFiles function to this file from
the now defunct SysConfig abstraction.
llvm-svn: 19159
diff --git a/llvm/lib/System/Unix/Process.cpp b/llvm/lib/System/Unix/Process.cpp
index 1c203ab..1953390 100644
--- a/llvm/lib/System/Unix/Process.cpp
+++ b/llvm/lib/System/Unix/Process.cpp
@@ -109,6 +109,18 @@
#endif
}
+// Some LLVM programs such as bugpoint produce core files as a normal part of
+// their operation. To prevent the disk from filling up, this function
+// does what's necessary to prevent their generation.
+void Process::PreventCoreFiles() {
+#if HAVE_SETRLIMIT
+ struct rlimit rlim;
+ rlim.rlim_cur = rlim.rlim_max = 0;
+ int res = setrlimit(RLIMIT_CORE, &rlim);
+ if (res != 0)
+ ThrowErrno("Can't prevent core file generation");
+#endif
+}
}
// vim: sw=2 smartindent smarttab tw=80 autoindent expandtab