[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r22889 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r22889 - gnunet/src/util |
Date: |
Wed, 25 Jul 2012 10:40:33 +0200 |
Author: grothoff
Date: 2012-07-25 10:40:33 +0200 (Wed, 25 Jul 2012)
New Revision: 22889
Modified:
gnunet/src/util/disk.c
Log:
-preserve errno
Modified: gnunet/src/util/disk.c
===================================================================
--- gnunet/src/util/disk.c 2012-07-25 08:38:12 UTC (rev 22888)
+++ gnunet/src/util/disk.c 2012-07-25 08:40:33 UTC (rev 22889)
@@ -843,7 +843,8 @@
*/
ssize_t
GNUNET_DISK_file_read_non_blocking (const struct GNUNET_DISK_FileHandle * h,
- void *result, size_t len)
+ void *result,
+ size_t len)
{
if (h == NULL)
{
@@ -891,10 +892,14 @@
/* set to non-blocking, read, then set back */
flags = fcntl (h->fd, F_GETFL);
if (0 == (flags & O_NONBLOCK))
- fcntl (h->fd, F_SETFL, flags | O_NONBLOCK);
+ (void) fcntl (h->fd, F_SETFL, flags | O_NONBLOCK);
ret = read (h->fd, result, len);
if (0 == (flags & O_NONBLOCK))
- fcntl (h->fd, F_SETFL, flags);
+ {
+ int eno = errno;
+ (void) fcntl (h->fd, F_SETFL, flags);
+ errno = eno;
+ }
return ret;
#endif
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r22889 - gnunet/src/util,
gnunet <=