Alien-uv
view release on metacpan or search on metacpan
libuv/ChangeLog view on Meta::CPAN
* windows: fix PYTHON environment variable usage (Jay Satiro)
* unix, windows: return system error on EAI_SYSTEM (Saúl Ibarra Corretgé)
* windows: fix handling closed socket while poll handle is closing (Saúl Ibarra
Corretgé)
* unix: don't run i/o callbacks after prepare callbacks (Saúl Ibarra Corretgé)
* windows: add tty unicode support for input (Peter Atashian)
* header: introduce `uv_loop_size()` (Andrius Bentkus)
* darwin: invoke `mach_timebase_info` only once (Fedor Indutny)
2014.05.02, Version 0.11.25 (Unstable), 2acd544cff7142e06aa3b09ec64b4a33dd9ab996
Changes since version 0.11.24:
libuv/src/win/tty.c view on Meta::CPAN
assert(handle->tty.rd.read_line_buffer.base != NULL);
assert(handle->tty.rd.read_line_buffer.len > 0);
/* ReadConsole can't handle big buffers. */
if (handle->tty.rd.read_line_buffer.len < MAX_INPUT_BUFFER_LENGTH) {
bytes = handle->tty.rd.read_line_buffer.len;
} else {
bytes = MAX_INPUT_BUFFER_LENGTH;
}
/* At last, unicode! One utf-16 codeunit never takes more than 3 utf-8
* codeunits to encode. */
chars = bytes / 3;
status = InterlockedExchange(&uv__read_console_status, IN_PROGRESS);
if (status == TRAP_REQUESTED) {
SET_REQ_SUCCESS(req);
req->u.io.overlapped.InternalHigh = 0;
POST_COMPLETION_FOR_REQ(loop, req);
return 0;
}
libuv/src/win/tty.c view on Meta::CPAN
goto out;
}
records_left--;
/* Ignore other events that are not key events. */
if (handle->tty.rd.last_input_record.EventType != KEY_EVENT) {
continue;
}
/* Ignore keyup events, unless the left alt key was held and a valid
* unicode character was emitted. */
if (!KEV.bKeyDown &&
(KEV.wVirtualKeyCode != VK_MENU ||
KEV.uChar.UnicodeChar == 0)) {
continue;
}
/* Ignore keypresses to numpad number keys if the left alt is held
* because the user is composing a character, or windows simulating this.
*/
if ((KEV.dwControlKeyState & LEFT_ALT_PRESSED) &&
libuv/src/win/tty.c view on Meta::CPAN
/* Real error */
handle->flags &= ~UV_HANDLE_READING;
DECREASE_ACTIVE_COUNT(loop, handle);
handle->read_cb((uv_stream_t*) handle,
uv_translate_sys_error(GET_REQ_ERROR(req)),
&buf);
}
} else {
if (!(handle->flags & UV_HANDLE_CANCELLATION_PENDING) &&
req->u.io.overlapped.InternalHigh != 0) {
/* Read successful. TODO: read unicode, convert to utf-8 */
DWORD bytes = req->u.io.overlapped.InternalHigh;
handle->read_cb((uv_stream_t*) handle, bytes, &buf);
}
handle->flags &= ~UV_HANDLE_CANCELLATION_PENDING;
}
/* Wait for more input events. */
if ((handle->flags & UV_HANDLE_READING) &&
!(handle->flags & UV_HANDLE_READ_PENDING)) {
uv_tty_queue_read(loop, handle);
libuv/test/test-idna.c view on Meta::CPAN
T("3å¹´Bçµéå
«å
ç", "xn--3B-ww4c5e180e575a65lsy2b");
T("å®å®¤å¥ç¾æµ-with-SUPER-MONKEYS",
"xn---with-SUPER-MONKEYS-pc58ag80a8qai00g7n9n");
T("Hello-Another-Way-ããããã®å ´æ",
"xn--Hello-Another-Way--fc4qua05auwb3674vfr0b");
T("ã²ã¨ã¤å±æ ¹ã®ä¸2", "xn--2-u9tlzr9756bt3uc0v");
T("Majiã§Koiãã5ç§å", "xn--MajiKoi5-783gue6qz075azm5e");
T("ããã£ã¼deã«ã³ã", "xn--de-jg4avhby1noc0d");
T("ãã®ã¹ãã¼ãã§", "xn--d9juau41awczczp");
T("-> $1.00 <-", "-> $1.00 <-");
/* Test cases from https://unicode.org/reports/tr46/ */
T("faÃ.de", "xn--fa-hia.de");
T("βÏλοÏ.com", "xn--nxasmm1c.com");
T("à·à·âà¶»à·.com", "xn--10cl1a0b660p.com");
T("ÙØ§Ù
ÙâØ§Û.com", "xn--mgba3gch31f060k.com");
return 0;
}
#undef T
#endif /* __MVS__ */
( run in 1.905 second using v1.01-cache-2.11-cpan-88abd93f124 )