{"push_id":1269121780,"size":211,"distinct_size":22,"ref":"refs/heads/issue-587","head":"8bc0d0f32f3ae788618c8b6462a97b651d634afc","before":"c281109f24e5616c173b221985c1709e4562ecce","commits":[{"sha":"a6da5d7d6557fdfbb6887384b6119ef7e43f2d3f","author":{"name":"Ben Noordhuis","email":"616e881177e53541ea47e5917a60deb2554e079d@bnoordhuis.nl"},"message":"darwin: abort() if (un)locking fs mutex fails\n\nThe pthread_mutex_lock() and pthread_mutex_unlock() calls logically\ncannot fail in uv__fs_write() but let's check the return value anyway:\ncosmic rays and memory corruption do happen.\n\nPR-URL: https://github.com/libuv/libuv/pull/603\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/a6da5d7d6557fdfbb6887384b6119ef7e43f2d3f"},{"sha":"dfdecf000622ea4dc9eec24be8f0cae99c0469cd","author":{"name":"Louis DeJardin","email":"5b65e63a5b039355158613b2ead1bca072b8116b@microsoft.com"},"message":"pipe: enable inprocess uv_write2 on Windows\n\nWhen duplicating the socket handle being sent the target process\nid is defaulted to the current process id. This enables uv_write2\nto be used for thread-clustering in addition to process-clustering on\nmulti-threaded programming languages.\n\nThe ipc tests are updated to run in two modes. In the _inproc mode\nthe echo work is done on a second thread instead of in a second\nprocess.\n\nAn internal function int uv_current_pid() is added to the windows\nspecific code which caches the value of GetCurrentProcessId(). This\nmeans uv_write2 does not call GetCurrentProcessId() every inprocess\nsend.\n\nRefs: https://github.com/joyent/libuv/issues/926\nPR-URL: https://github.com/libuv/libuv/pull/540\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/dfdecf000622ea4dc9eec24be8f0cae99c0469cd"},{"sha":"77eda8d90b51c8a654f97fd8d2c32ccc8280191a","author":{"name":"Nikolai Vavilov","email":"304137e2d706dae36ea78cc2f796dcd1bc6cce3b@gmail.com"},"message":"win: properly return UV_EBADF when _close() fails\n\nPreviously, libuv didn't return the correct error code when attempting\nto close an invalid file descriptor with `uv_fs_close()`.\n\nPR-URL: https://github.com/libuv/libuv/pull/613\nReviewed-by: Bert Belder <bertbelder@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/77eda8d90b51c8a654f97fd8d2c32ccc8280191a"},{"sha":"baf700acdb58c1294b1d7a2403a3fde694ce50f0","author":{"name":"Imran Iqbal","email":"ee1ac66758330fb2a0ac67bb3f5642c76b5e0fb7@ca.ibm.com"},"message":"test: skip process_title for AIX\n\nuv_(get|set)_process_title is not implemented for AIX. See unix/aix.c\n\nPR-URL: https://github.com/libuv/libuv/pull/616\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/baf700acdb58c1294b1d7a2403a3fde694ce50f0"},{"sha":"6490c508a9db719f25ca3b37a0987ca4d923bbe4","author":{"name":"Petka Antonov","email":"609e30552c5f43f7b835a96366941f82a9048c55@hotmail.com"},"message":"misc: expose handle print APIs\n\nPR-URL: https://github.com/libuv/libuv/pull/291\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/6490c508a9db719f25ca3b37a0987ca4d923bbe4"},{"sha":"f41b7386de48a50a1cc3d1549a118b7bd596711d","author":{"name":"Saúl Ibarra Corretgé","email":"69cd6867fd1a2f896490277e4c77bd4a549ec3e1@gmail.com"},"message":"include: add stdio.h to uv.h\n\nFixes a compilation problem in some platforms (notably OSX) after\n6490c50.\n\nPR-URL: https://github.com/libuv/libuv/pull/618\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>\nReviewed-By: Jeremy Whitlock <jwhitlock@apache.org>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/f41b7386de48a50a1cc3d1549a118b7bd596711d"},{"sha":"81072b98f5a8f7830161ef65a6bdd50906a88e72","author":{"name":"Ian Kronquist","email":"570437b700c6ab8d3ef27b807393389bcee94467@teleport.com"},"message":"misc: remove unnecessary null pointer checks\n\nFixes: https://github.com/libuv/libuv/issues/595\nPR-URL: https://github.com/libuv/libuv/pull/604\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/81072b98f5a8f7830161ef65a6bdd50906a88e72"},{"sha":"4052c747971f0f57cb14dd5cc9a64d7b8788e733","author":{"name":"Santiago Gimeno","email":"1ff54bfafcdd5f2b451c162cce52249507ed2a36@gmail.com"},"message":"test,freebsd: skip udp_dual_stack if not supported\n\nBy default, FreeBSD has net.inet6.ip6.v6only set to 1 (i.e., no dual stack\nsupport). A new function can_ipv6_ipv4_dual is added to check its value and\ndecide whether `udp_dual_stack` test must be skipped or not.\n\nPR-URL: https://github.com/libuv/libuv/pull/614\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/4052c747971f0f57cb14dd5cc9a64d7b8788e733"},{"sha":"af7a3614d0d64233bae84fe089faefbcf720e95b","author":{"name":"Ben Noordhuis","email":"616e881177e53541ea47e5917a60deb2554e079d@bnoordhuis.nl"},"message":"linux: don't retry dup2/dup3 on EINTR\n\nRetrying seems like a bad idea in a multi-threaded program because the\nman page leaves it unspecified whether the file descriptor is closed\nafter EINTR.\n\nIt's probably an academic issue because as far as I have been able to\nestablish by checking the kernel sources, dup2 and dup3 never actually\nreturn EINTR.  For dup3, this appears to have been the case since its\nintroduction in v2.6.27; for dup2, it goes back to at least v2.6.18.\n\nFixes: https://github.com/libuv/libuv/issues/462\nPR-URL: https://github.com/libuv/libuv/pull/608\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/af7a3614d0d64233bae84fe089faefbcf720e95b"},{"sha":"9bbc1137eee705b818f145c3819e1383771fcbb2","author":{"name":"Ben Noordhuis","email":"616e881177e53541ea47e5917a60deb2554e079d@bnoordhuis.nl"},"message":"unix: don't retry dup2/dup3 on EINTR\n\nLike the previous commit, but this time for UNIX platforms other than\nLinux.\n\nAs far as I have been able to establish, dup2 and dup3 never return\nEINTR on OS X and FreeBSD.  Even if other platforms do return EINTR,\nit's probably still better not to retry because it's unspecified\nwhether the file descriptor has been closed.\n\nFixes: https://github.com/libuv/libuv/issues/462\nPR-URL: https://github.com/libuv/libuv/pull/608\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/9bbc1137eee705b818f145c3819e1383771fcbb2"},{"sha":"5f15f72ccacd5243b354b2cfc7d573389ac60340","author":{"name":"Saúl Ibarra Corretgé","email":"69cd6867fd1a2f896490277e4c77bd4a549ec3e1@gmail.com"},"message":"test: fix -Wtautological-pointer-compare warnings\n\n~~~~\ntest/test-get-loadavg.c:30:14: warning: comparison of array 'avg' not\nequal to a null pointer is always true [-Wtautological-pointer-compare]\n\ntest/test-getnameinfo.c:76:18: warning: comparison of array 'req.host'\nnot equal to a null pointer is always true\n[-Wtautological-pointer-compare]\n\ntest/test-getnameinfo.c:77:18: warning: comparison of array\n'req.service' not equal to a null pointer is always true\n[-Wtautological-pointer-compare]\n~~~~\n\nPR-URL: https://github.com/libuv/libuv/pull/622\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/5f15f72ccacd5243b354b2cfc7d573389ac60340"},{"sha":"7b9bc28e85b81bb2c116912038ae976f815824c4","author":{"name":"Tony Kelman","email":"59db37dd0a1458e16c2dffa797f972d03fa29423@kelman.net"},"message":"win: map ERROR_BAD_PATHNAME to UV_ENOENT\n\ne.g. when trying to call uv_fs_stat on \"Z:\\\\:\\\\a\" for a network drive Z:\n\nRefs: https://github.com/joyent/libuv/issues/390\nPR-URL: https://github.com/libuv/libuv/pull/623\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/7b9bc28e85b81bb2c116912038ae976f815824c4"},{"sha":"f5796d2fbac47b026e3cc3f2b988a18c1d5b3f21","author":{"name":"Imran Iqbal","email":"ee1ac66758330fb2a0ac67bb3f5642c76b5e0fb7@ca.ibm.com"},"message":"test: fix test/test-tty.c for AIX\n\n'/dev/random' causes 'isatty()' to return 1 on AIX[1]. This causes\nan issue where 'dev/tty' is opened (hard coded in\nsrc/unix/tty.c:uv_tty_init). Tried to replace the hardcoded value with\nwhat is returned by 'ttyname()' but on AIX all that is returned is\n'/dev/'.\n\nThis seems to be a bug with the AIX kernel.\n\n[1]http://goo.gl/wGa7mf\n\nPR-URL: https://github.com/libuv/libuv/pull/624\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/f5796d2fbac47b026e3cc3f2b988a18c1d5b3f21"},{"sha":"43994b4e3c86f594eb25a47b87b3d82228dd5746","author":{"name":"kkdaemon","email":"5e2bcae67203630bca68384d4775175baccf95c0@gmail.com"},"message":"android: support api level less than 21\n\nRemove restriction to Android API level >= 21, now libuv can be used with\nAndroid API level at least 14.\n\nDirect use of getpwuid_r function resulted in linker errors in applications\nwere built against API level below 21. That function was 'officially'\nintroduced in Android API level 21, but it exists in libc beginning from API\nlevel at least 14.\n\nSo try to get a pointer to getpwuid_r at runtime using dlsym when building\nlibuv with API level < 21.\n\nPR-URL: https://github.com/libuv/libuv/pull/633\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/43994b4e3c86f594eb25a47b87b3d82228dd5746"},{"sha":"0761bfe6a3d6c08326630879574354141741b0f1","author":{"name":"Fedor Indutny","email":"e3a3fea86412735533cea7b2c01aff66b6ab2cb9@indutny.com"},"message":"fsevents: fix race on simultaneous init+close\n\nWhen `uv_fsevents_t` handle is closed immediately after initializing,\nthere is a possibility that the `CFRunLoop`'s thread will process both\nof these events at the same time. `uv__is_active(handle)` will return\n`0`, and the `uv_close()` semaphore will be unblocked, leading\nto the use after free in node.js.\n\nSee: https://github.com/nodejs/node/issues/4091\nPR-URL: https://github.com/libuv/libuv/pull/637\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/0761bfe6a3d6c08326630879574354141741b0f1"},{"sha":"176fdc735205f009b9c66e498d7b35a0142531c2","author":{"name":"Sa��l Ibarra Corretg��","email":"69cd6867fd1a2f896490277e4c77bd4a549ec3e1@gmail.com"},"message":"linux,fs: fix p{read,write}v with a 64bit offset\n\nAccording to [0] we need to pass it in 2 32bit registers on some\nplatforms such as MIPS. Fix inspired by the musl libc implementation [1].\n\n[0]: http://man7.org/linux/man-pages/man2/syscall.2.html#NOTES\n[1]: http://git.musl-libc.org/cgit/musl/tree/src/unistd/preadv.c\n\nFixes: https://github.com/libuv/libuv/issues/473\nRefs: https://github.com/libuv/libuv/pull/498\nRefs: https://github.com/libuv/libuv/pull/627\nPR-URL: https://github.com/libuv/libuv/pull/638\nReviewed-By: Ben Noordhuis <info@bnoordhuis.nl>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/176fdc735205f009b9c66e498d7b35a0142531c2"},{"sha":"e76b8838e51f6e8f1944b6c6d50c3948ed764a0b","author":{"name":"Yuval Brik","email":"2b480a3f57d6044aa8dbc594b5632aacc3588772@brik.org.il"},"message":"fs: add uv_fs_realpath()\n\nEquivalent to realpath(3), returns the full resolved absolute path of a\nfile or directory.\n\nPR-URL: https://github.com/libuv/libuv/pull/531\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/e76b8838e51f6e8f1944b6c6d50c3948ed764a0b"},{"sha":"e0250b7d5c6fcb74602039afc8457d715e11c1b8","author":{"name":"Joran Dirk Greef","email":"7c2f53d915142e47534151b3519361b2cc280a42@ronomon.com"},"message":"win: fix path for removed and renamed fs events\n\nPrevious behavior on Windows was to set the path to NULL for removed\nand renamed fs events. This was because the path provided by\nReadDirectoryChangesW might (in rare cases) be an 8.3 short name which\ncould then no longer be converted to a long name after the path had\nbeen removed or renamed. This meant that the user had to detect which\npath was actually deleted or renamed and required the user to rescan\nthe entire watched subtree, taking several seconds or more for large\nsubtrees.\n\nHowever, ReadDirectoryChangesW is publicly documented to emit 8.3\nshort names if the original handle for the changed path was opened\nusing an 8.3 short name, and libuv may already emit 8.3 short names for\nother events if the path cannot be explicitly resolved to a long name.\n\nThis commit fixes the path for removed and renamed fs events, and does\nnot set the path to NULL, even if the path might be an 8.3 short name.\nThis makes it possible for the user to do a partial scan of the\nsubtree, restricting the scan to paths which match the long form or 8.3\nshort name (even if some of these are false positive matches). This\nmeans that deletes and renames can now be detected accurately on\nWindows within a few milliseconds.\n\nFixes: https://github.com/libuv/libuv/issues/634\nRefs: https://github.com/libuv/libuv/pull/199\nPR-URL: https://github.com/libuv/libuv/pull/639\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/e0250b7d5c6fcb74602039afc8457d715e11c1b8"},{"sha":"eb3f48ebafb6e631e93dea7a4aa21f4ef571bfeb","author":{"name":"Jeremy Whitlock","email":"157daff0741b1c6ca9518f1cac00160003dd8a43@apache.org"},"message":"win: do not read more from stream than available\n\nOn Windows the pipe implementation could read more from a stream than\nwas available and it would create an assertion failure.  This change\nwill make it so we read the minimum of the available data or the length\nof the data.\n\nTo test this, I took the existing ipc_send_recv_tcp test and updated it\nto do two writes and two read on each side of the pipe since that was the\nreproduction recipe used by the reporter.  This approach reproduced the\nissue on Windows and the committed fix resolved the issue.\n\nFixes: https://github.com/libuv/libuv/issues/505\nPR-URL: https://github.com/libuv/libuv/pull/549\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/eb3f48ebafb6e631e93dea7a4aa21f4ef571bfeb"},{"sha":"6060841edca2393345b119c93d11b102b6ce650f","author":{"name":"Andrey Mazo","email":"16260a7354ebbbdd851362f06a1dfbd40473187b@fidelissecurity.com"},"message":"test: test that uv_close() doesn't corrupt QUEUE\n\nThe test adds all types of handles, that were known to be affected by\nQUEUE_REMOVE()-within-QUEUE_FOREACH() bug, to a loop.\nIt then calls uv_close() to trigger QUEUE_REMOVE()-within-QUEUE_FOREACH() case\nand checks whether a particular QUEUE is corrupted or not.\n\nRestrict the test to Linux only for now as it fails on other platforms\nfor various reasons.\n\nPR-URL: https://github.com/libuv/libuv/pull/621\nReviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>","distinct":false,"url":"https://api.github.com/repos/whitlockjc/libuv/commits/6060841edca2393345b119c93d11b102b6ce650f"}]}
{"actor":{"display_login":"whitlockjc"}}