1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* win32/win32.c (rb_w32_strerror): should return correct message

for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]

* win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
  (bcc32) [ruby-dev:26533]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ocean 2005-07-14 09:33:52 +00:00
parent a216fd757c
commit 59970fde60
2 changed files with 27 additions and 6 deletions

View file

@ -1,3 +1,11 @@
Thu Jul 14 18:27:35 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
* win32/win32.c (rb_w32_strerror): should return correct message
for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
* win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
(bcc32) [ruby-dev:26533]
Thu Jul 14 00:45:42 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
* LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.

View file

@ -1752,6 +1752,15 @@ rb_w32_strerror(int e)
DWORD source = 0;
char *p;
#if defined __BORLANDC__ && defined ENOTEMPTY // _sys_errlist is broken
switch (e) {
case ENAMETOOLONG:
return "Filename too long";
case ENOTEMPTY:
return "Directory not empty";
}
#endif
if (e < 0 || e > sys_nerr) {
if (e < 0)
e = GetLastError();
@ -1760,13 +1769,17 @@ rb_w32_strerror(int e)
buffer, 512, NULL) == 0) {
strcpy(buffer, "Unknown Error");
}
for (p = buffer + strlen(buffer) - 1; buffer <= p; p--) {
if (*p != '\r' && *p != '\n') break;
*p = 0;
}
return buffer;
}
return strerror(e);
else {
strncpy(buffer, strerror(e), sizeof(buffer));
buffer[sizeof(buffer) - 1] = 0;
}
for (p = buffer + strlen(buffer) - 1; buffer <= p; p--) {
if (*p != '\r' && *p != '\n') break;
*p = 0;
}
return buffer;
}
//