Cygwin: serial: avoid overrun of vtime
After changing the type of fhandler_serial::vtime_ to cc_t, vtime_ must be stored in 10s of seconds, not in milliseconds. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
e4f9fc92ac
commit
72294cd211
|
@ -903,7 +903,7 @@ fhandler_serial::tcsetattr (int action, const struct termios *t)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
vtime_ = t->c_cc[VTIME] * 100;
|
vtime_ = t->c_cc[VTIME];
|
||||||
vmin_ = t->c_cc[VMIN];
|
vmin_ = t->c_cc[VMIN];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -925,13 +925,13 @@ fhandler_serial::tcsetattr (int action, const struct termios *t)
|
||||||
{
|
{
|
||||||
/* set timeoout constant appropriately and we will only try to
|
/* set timeoout constant appropriately and we will only try to
|
||||||
read one character in ReadFile() */
|
read one character in ReadFile() */
|
||||||
to.ReadTotalTimeoutConstant = vtime_;
|
to.ReadTotalTimeoutConstant = vtime_ * 100;
|
||||||
to.ReadIntervalTimeout = to.ReadTotalTimeoutMultiplier = MAXDWORD;
|
to.ReadIntervalTimeout = to.ReadTotalTimeoutMultiplier = MAXDWORD;
|
||||||
}
|
}
|
||||||
else if ((vmin_ > 0) && (vtime_ > 0))
|
else if ((vmin_ > 0) && (vtime_ > 0))
|
||||||
{
|
{
|
||||||
/* time applies to the interval time for this case */
|
/* time applies to the interval time for this case */
|
||||||
to.ReadIntervalTimeout = vtime_;
|
to.ReadIntervalTimeout = vtime_ * 100;
|
||||||
}
|
}
|
||||||
else if ((vmin_ == 0) && (vtime_ == 0))
|
else if ((vmin_ == 0) && (vtime_ == 0))
|
||||||
{
|
{
|
||||||
|
@ -1138,7 +1138,7 @@ fhandler_serial::tcgetattr (struct termios *t)
|
||||||
if (!wbinary ())
|
if (!wbinary ())
|
||||||
t->c_oflag |= ONLCR;
|
t->c_oflag |= ONLCR;
|
||||||
|
|
||||||
t->c_cc[VTIME] = vtime_ / 100;
|
t->c_cc[VTIME] = vtime_;
|
||||||
t->c_cc[VMIN] = vmin_;
|
t->c_cc[VMIN] = vmin_;
|
||||||
|
|
||||||
debug_printf ("vmin_ %u, vtime_ %u", vmin_, vtime_);
|
debug_printf ("vmin_ %u, vtime_ %u", vmin_, vtime_);
|
||||||
|
|
Loading…
Reference in New Issue