changeset 5646:f6cfba32b7fa

(xgethostname): Check for ENOMEM, which is returned by OSX/Darwin if the specified buffer is not large enough for the hostname.
author Jim Meyering <jim@meyering.net>
date Sun, 20 Feb 2005 16:35:32 +0000
parents a180af007086
children 10e019bb6d23
files lib/xgethostname.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lib/xgethostname.c
+++ b/lib/xgethostname.c
@@ -1,6 +1,6 @@
 /* xgethostname.c -- return current hostname with unlimited length
 
-   Copyright (C) 1992, 1996, 2000, 2001, 2003, 2004 Free Software
+   Copyright (C) 1992, 1996, 2000, 2001, 2003, 2004, 2005 Free Software
    Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -69,7 +69,9 @@
 	  if (! hostname[size_1 - 1])
 	    break;
 	}
-      else if (errno != 0 && errno != ENAMETOOLONG && errno != EINVAL)
+      else if (errno != 0 && errno != ENAMETOOLONG && errno != EINVAL
+	       /* OSX/Darwin does this when the buffer is not large enough */
+	       && errno != ENOMEM)
 	{
 	  int saved_errno = errno;
 	  free (hostname);