Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Jun 29, 2012
  1. @bnoordhuis
  2. @bnoordhuis

    linux: don't use accept4() syscall after ENOSYS

    bnoordhuis authored
    Repeatedly calling the syscall when it's not supported has a small but
    measurable performance impact.
    
    Besides, it's a silly thing to do.
  3. @bnoordhuis

    linux: fix accept4() ENOSYS detection on i386

    bnoordhuis authored
    accept4() piggybacks on the socketcall() on i386. socketcall() has the flaw
    that it returns EINVAL instead of ENOSYS when the operation is not supported.
    
    The problem is that accept4() also returns EINVAL when its flag argument is
    invalid.
    
    Try to discern between the two failure cases to the best of our abilities.
Commits on Jun 28, 2012
  1. @piscisaureus

    windows: don't inhibit reparse behavior when non-symlink is encountered

    piscisaureus authored
    This fixes the issue that a mount point would be treated as a
    symlink, but readlink would subsequently return an NT namespaced
    path that is unusable for many purposes.
    
    This also pre-emptively fixes the problems that would arise when
    an user has a reparse point whose tag is neither
    IO_REPARSE_TAG_MOUNT_POINT nor IO_REPARSE_TAG_SYMLINK.
    
    Finally uv_lstat() will now return the correct length in st_size.
    Previously the length was computed incorrectly for relative
    symlinks, and those that had non-ascii characters in their target.
Commits on Jun 27, 2012
  1. @bnoordhuis

    unix: assume that dlopen() clobbers dlerror()

    bnoordhuis authored
    Or rather, don't assume that dlopen() does *not* clobber dlerror().
    
    Joe Ferner reports that loading libjava on OS X sets dlerror() even when
    dlopen() succeeds, which makes uv_dlopen() raise an error when it shouldn't.
    
    I haven't been able to reproduce it but it's possible that libjava clobbers
    dlerror() by trying (and failing) to load other libraries.
    
    At any rate, Joe confirmed that this patch addresses the issue.
    
    Fixes #462.
Commits on Jun 26, 2012
  1. @bnoordhuis

    unix: don't create connect req when connect() fails

    bnoordhuis authored
    Fixes a lifecycle issue where the req got created, added to the list of active
    reqs but wasn't properly activated because uv__connect() returned early.
  2. @roman-neuhauser @bnoordhuis

    unix: map ENODEV to UV_ENODEV

    roman-neuhauser authored bnoordhuis committed
    produces better error message from test-dgram-multicast-multi-process
    when run w/o network.
    
    before:
    
    === release test-dgram-multicast-multi-process ===
    Path: simple/test-dgram-multicast-multi-process
    dgram.js:287
        throw new errnoException(errno, 'addMembership');
              ^
    Error: addMembership Unknown system errno 19
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    [PARENT] Worker 9223 died. 1 dead of 3
    
    dgram.js:287
        throw new errnoException(errno, 'addMembership');
              ^
    Error: addMembership Unknown system errno 19
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    
    [PARENT] sent 'First message to send' to 224.0.0.114:12346
    dgram.js:287
    [PARENT] sent 'Second message to send' to 224.0.0.114:12346
        throw new errnoException(errno, 'addMembership');
    [PARENT] sent 'Third message to send' to 224.0.0.114:12346
              ^
    [PARENT] sendSocket closed
    [PARENT] Worker 9224 died. 2 dead of 3
    Error: addMembership Unknown system errno 19
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    [PARENT] Worker 9225 died. 3 dead of 3
    [PARENT] All workers have died.
    [PARENT] Fail
    Command: out/Release/node /home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js
    
    after:
    
    === release test-dgram-multicast-multi-process ===
    Path: simple/test-dgram-multicast-multi-process
    dgram.js:287
        throw new errnoException(errno, 'addMembership');
              ^
    Error: addMembership ENODEV
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    [PARENT] Worker 13141 died. 1 dead of 3
    
    dgram.js:287
        throw new errnoException(errno, 'addMembership');
              ^
    [PARENT] sent 'First message to send' to 224.0.0.114:12346
    [PARENT] sent 'Second message to send' to 224.0.0.114:12346
    [PARENT] sent 'Third message to send' to 224.0.0.114:12346
    [PARENT] sent 'Fourth message to send' to 224.0.0.114:12346
    [PARENT] sendSocket closed
    
    dgram.js:287
        throw new errnoException(errno, 'addMembership');
              ^
    Error: addMembership ENODEV
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    [PARENT] Worker 13142 died. 2 dead of 3
    Error: addMembership ENODEV
        at new errnoException (dgram.js:356:11)
        at Socket.addMembership (dgram.js:287:11)
        at Object.<anonymous> (/home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js:224:16)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:487:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)
    [PARENT] Worker 13143 died. 3 dead of 3
    [PARENT] All workers have died.
    [PARENT] Fail
    Command: out/Release/node /home/roman/wc/node/test/simple/test-dgram-multicast-multi-process.js
Commits on Jun 25, 2012
  1. @bnoordhuis
  2. @saghul @piscisaureus

    win: map ERROR_PRIVILEGE_NOT_HELD to UV_EPERM

    saghul authored piscisaureus committed
Commits on Jun 22, 2012
  1. @piscisaureus
  2. @piscisaureus
  3. @piscisaureus

    windows: whitespace fixes

    piscisaureus authored
  4. @bnoordhuis

    Update libuv version macro.

    bnoordhuis authored
Commits on Jun 21, 2012
  1. @piscisaureus
  2. @piscisaureus

    Make the stat benchmark run shorter

    piscisaureus authored
    Man, Windows is so slow...
  3. @bnoordhuis
  4. @piscisaureus
Commits on Jun 20, 2012
  1. @bnoordhuis

    unix, windows: stat: never pass NULL to cb

    bnoordhuis authored
    Never pass NULL to the fs_poll callback, use a zeroed out statbuf instead.
    
    Makes the interface a little more convenient to use.
  2. @piscisaureus

    windows: abort accept requests when a shared tcp server is closed

    piscisaureus authored
    Just closing the listening socket handle does not cancel AcceptEx
    operations when another handle is keeping the underlying socket
    open. Thus the AcceptEx operations have to be explicitly canceled
    in uv_tcp_close.
Commits on Jun 19, 2012
  1. @piscisaureus
  2. @piscisaureus
Commits on Jun 18, 2012
  1. @isaacs @bnoordhuis

    sunos: allow suppression of ifaddrs.h

    isaacs authored bnoordhuis committed
    Older Solaris versions do not have this feature.  This allows
    them to set SUNOS_NO_IFADDRS to allow libuv to build.
    
    Re: joyent/node#3465
  2. @indutny @bnoordhuis

    sunos: fix assertion errors in uv__finish_close

    indutny authored bnoordhuis committed
  3. @bnoordhuis
Commits on Jun 16, 2012
  1. @bnoordhuis

    unix, windows: update uv_fs_poll API

    bnoordhuis authored
    * the callback gets called only once on error, not repeatedly...
    
    * ...unless the error reason changes from e.g. UV_ENOENT to UV_EACCES
    
    * the callback receives pointers to uv_statbuf_t objects so it can inspect what
      changed
Commits on Jun 14, 2012
  1. @piscisaureus
  2. @piscisaureus
  3. @piscisaureus
  4. @bnoordhuis

    unix: fix memory leak in libev

    bnoordhuis authored
    Not everything that identifies itself as glibc really is glibc.
Commits on Jun 13, 2012
  1. @bnoordhuis @piscisaureus

    unix: implement uv_disable_stdio_inheritance()

    bnoordhuis authored piscisaureus committed
  2. @piscisaureus
  3. @bnoordhuis @piscisaureus

    unix: make uv__nonblock() EINTR resilient

    bnoordhuis authored piscisaureus committed
    It's underspecified if and when ioctl(FIONBIO) or fcntl() can return EINTR.
    Let's take the safe route.
Commits on May 31, 2012
  1. @bnoordhuis
  2. @bnoordhuis
  3. @bnoordhuis

    unix, windows: add stat() based file watcher

    bnoordhuis authored
    Monitors a file path for changes. Supersedes ev_stat.
Something went wrong with that request. Please try again.