36 lines
1.1 KiB
Diff
36 lines
1.1 KiB
Diff
--- a/streams/wvstream.cc 2016-11-30 11:01:20.506154631 +0400
|
|
+++ b/streams/wvstream.cc 2016-11-30 11:09:08.821961476 +0400
|
|
@@ -907,9 +907,9 @@
|
|
|
|
if (forceable)
|
|
{
|
|
- si.wants.readable = readcb;
|
|
- si.wants.writable = writecb;
|
|
- si.wants.isexception = exceptcb;
|
|
+ si.wants.readable = static_cast<bool>(readcb);
|
|
+ si.wants.writable = static_cast<bool>(writecb);
|
|
+ si.wants.isexception = static_cast<bool>(exceptcb);
|
|
}
|
|
else
|
|
{
|
|
@@ -1019,7 +1019,8 @@
|
|
|
|
IWvStream::SelectRequest WvStream::get_select_request()
|
|
{
|
|
- return IWvStream::SelectRequest(readcb, writecb, exceptcb);
|
|
+ return IWvStream::SelectRequest(static_cast<bool>(readcb), static_cast<bool>(writecb),
|
|
+ static_cast<bool>(exceptcb));
|
|
}
|
|
|
|
|
|
@@ -1107,7 +1108,8 @@
|
|
// inefficient, because if the alarm was expired then pre_select()
|
|
// returned true anyway and short-circuited the previous select().
|
|
TRACE("hello-%p\n", this);
|
|
- return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
|
|
+ return !alarm_was_ticking || select(0, static_cast<bool>(readcb),
|
|
+ static_cast<bool>(writecb), static_cast<bool>(exceptcb));
|
|
}
|
|
|
|
|