(install_handler): Handle case that the output file does not exists.
authordrepper <drepper>
Thu, 12 Jul 2001 05:50:37 +0000 (05:50 +0000)
committerdrepper <drepper>
Thu, 12 Jul 2001 05:50:37 +0000 (05:50 +0000)
sysdeps/generic/segfault.c

index 8a8ee1d..7e364f0 100644 (file)
@@ -237,6 +237,11 @@ install_handler (void)
 
   /* Preserve the output file name if there is any given.  */
   name = getenv ("SEGFAULT_OUTPUT_NAME");
-  if (name != NULL && name[0] != '\0' && access (name, R_OK | W_OK) == 0)
-    fname = __strdup (name);
+  if (name != NULL && name[0] != '\0')
+    {
+      int ret = access (name, R_OK | W_OK);
+
+      if (ret == 0 || (ret == -1 && errno == ENOENT))
+       fname = __strdup (name);
+    }
 }