[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r20427 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r20427 - gnunet/src/util |
Date: |
Sat, 10 Mar 2012 22:50:28 +0100 |
Author: grothoff
Date: 2012-03-10 22:50:28 +0100 (Sat, 10 Mar 2012)
New Revision: 20427
Modified:
gnunet/src/util/os_priority.c
Log:
-avoid problems with partial reads by using 1 byte for signals
Modified: gnunet/src/util/os_priority.c
===================================================================
--- gnunet/src/util/os_priority.c 2012-03-10 20:48:06 UTC (rev 20426)
+++ gnunet/src/util/os_priority.c 2012-03-10 21:50:28 UTC (rev 20427)
@@ -325,8 +325,8 @@
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct GNUNET_DISK_FileHandle *control_pipe = cls;
- int sig;
-
+ char sig;
+
LOG (GNUNET_ERROR_TYPE_DEBUG, "`%s' invoked because of %d\n", __FUNCTION__,
tc->reason);
if (tc->reason &
@@ -347,7 +347,7 @@
GNUNET_SCHEDULER_add_read_file (GNUNET_TIME_UNIT_FOREVER_REL,
control_pipe, &parent_control_handler,
control_pipe);
- raise (sig);
+ raise ((int) sig);
}
@@ -425,7 +425,9 @@
GNUNET_OS_process_kill (struct GNUNET_OS_Process *proc, int sig)
{
int ret;
+ char csig;
+ csig = (char) sig;
#if !WINDOWS
if ( (NULL == proc->control_pipe) &&
(NULL != proc->childpipename) )
@@ -442,8 +444,8 @@
return kill (proc->pid, sig);
#endif
}
- ret = GNUNET_DISK_file_write (proc->control_pipe, &sig, sizeof (sig));
- if (ret == sizeof (sig))
+ ret = GNUNET_DISK_file_write (proc->control_pipe, &csig, sizeof (csig));
+ if (ret == sizeof (csig))
return 0;
/* pipe failed, try other methods */
switch (sig)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r20427 - gnunet/src/util,
gnunet <=