/* strerror.c --- POSIX compatible system error routine
- Copyright (C) 2007-2011 Free Software Foundation, Inc.
+ Copyright (C) 2007-2014 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
if (msg)
return (char *) msg;
- /* FreeBSD rejects 0; see http://austingroupbugs.net/view.php?id=382.
- MacOS X 10.5 does not distinguish 0 from -1. */
- if (n)
- msg = strerror (n);
- else
- {
- int saved_errno = errno;
- errno = 0;
- msg = strerror (n);
- if (errno || (msg &&
- (strstr (msg, "nknown") || strstr (msg, "ndefined"))))
- msg = "Success";
- errno = saved_errno;
- }
+ msg = strerror (n);
/* Our strerror_r implementation might use the system's strerror
buffer, so all other clients of strerror have to see the error