platform/upstream/nodejs.git
12 years agoblog: Post for v0.8.14
isaacs [Thu, 25 Oct 2012 21:17:43 +0000 (14:17 -0700)]
blog: Post for v0.8.14

12 years agoNow working on 0.8.15
isaacs [Thu, 25 Oct 2012 21:16:53 +0000 (14:16 -0700)]
Now working on 0.8.15

12 years agoMerge branch 'v0.8.14-release' into v0.8
isaacs [Thu, 25 Oct 2012 21:15:27 +0000 (14:15 -0700)]
Merge branch 'v0.8.14-release' into v0.8

12 years ago2012.10.25, Version 0.8.14 (Stable) v0.8.14
isaacs [Thu, 25 Oct 2012 20:49:32 +0000 (13:49 -0700)]
2012.10.25, Version 0.8.14 (Stable)

* events: Don't clobber pre-existing _events obj in EE ctor (isaacs)

12 years agoevents: Don't clobber pre-existing _events obj in EE ctor
isaacs [Thu, 25 Oct 2012 20:37:08 +0000 (13:37 -0700)]
events: Don't clobber pre-existing _events obj in EE ctor

12 years agoblog: Post for v0.8.13
isaacs [Thu, 25 Oct 2012 19:53:03 +0000 (12:53 -0700)]
blog: Post for v0.8.13

12 years agoNow working on 0.8.14
isaacs [Thu, 25 Oct 2012 19:52:46 +0000 (12:52 -0700)]
Now working on 0.8.14

12 years agoMerge branch 'v0.8.13-release' into v0.8
isaacs [Thu, 25 Oct 2012 19:52:26 +0000 (12:52 -0700)]
Merge branch 'v0.8.13-release' into v0.8

12 years ago2012.10.25, Version 0.8.13 (Stable) v0.8.13
isaacs [Thu, 25 Oct 2012 18:32:31 +0000 (11:32 -0700)]
2012.10.25, Version 0.8.13 (Stable)

* V8: Upgrade to 3.11.10.25

* npm: Upgrade to 1.1.65

* url: parse hostnames that start with - or _ (Ben Noordhuis)

* repl: Fix Windows 8 terminal issue (Bert Belder)

* typed arrays: use signed char for signed int8s (Aaron Jacobs)

* crypto: fix bugs in DiffieHellman (Ben Noordhuis)

* configure: turn on VFPv3 on ARMv7 (Ben Noordhuis)

* Re-enable OpenSSL UI for entering passphrases via tty (Ben Noordhuis)

* repl: ensure each REPL instance gets its own "context" (Nathan Rajlich)

12 years agoV8 build: 'echo -n' considered harmful
isaacs [Wed, 24 Oct 2012 16:21:39 +0000 (09:21 -0700)]
V8 build: 'echo -n' considered harmful

12 years agonpm: Upgrade to 1.1.65
isaacs [Thu, 25 Oct 2012 16:15:35 +0000 (09:15 -0700)]
npm: Upgrade to 1.1.65

12 years agoevents: Make the EventEmitter class monomorphic
isaacs [Thu, 25 Oct 2012 14:48:36 +0000 (07:48 -0700)]
events: Make the EventEmitter class monomorphic

Always add domain, _events, and _maxListeners properties, set to the
default values at first.

Leads to a very very slight perf improvement when using setMaxListeners,
or dealing with a lot of EE objects that don't have any listeners.

12 years agov8: remove optimization switches
Ben Noordhuis [Wed, 24 Oct 2012 22:52:15 +0000 (00:52 +0200)]
v8: remove optimization switches

Remove compiler switches from $(TOPLEVEL)/deps/v8/build/common.gypi, we set
them globally in $(TOPLEVEL)/common.gypi.

Commit 29d12c73 accidentally reintroduced the switches again. In particular,
the 'cflags!': ['-O2','-Os'] section forced building V8 without any
optimizations, resulting in a steep (~66%) performance drop on some benchmarks.

Fixes #4191.

12 years agobuild: add --unsafe-optimizations configure switch
Ben Noordhuis [Wed, 24 Oct 2012 22:44:37 +0000 (00:44 +0200)]
build: add --unsafe-optimizations configure switch

Turns on -O3 and other optimizations that may produce buggy code with some
toolchains. Use at your own risk.

12 years agourl: parse hostnames that start with - or _
Ben Noordhuis [Tue, 23 Oct 2012 12:06:04 +0000 (14:06 +0200)]
url: parse hostnames that start with - or _

Allow hostnames like '-lovemonsterz.tumblr.com' and '_jabber._tcp.google.com'.

Fixes #4177.

12 years agoblog: Post for v0.9.3 release
isaacs [Wed, 24 Oct 2012 17:08:58 +0000 (10:08 -0700)]
blog: Post for v0.9.3 release

12 years agorepl: call resume() after setRawMode()
Bert Belder [Wed, 24 Oct 2012 00:42:57 +0000 (02:42 +0200)]
repl: call resume() after setRawMode()

Solves #4178, but does not fix the underlying issue

12 years agodoc: child_process: document uid and gid spawn() options
Olivier Lalonde [Tue, 23 Oct 2012 16:45:10 +0000 (00:45 +0800)]
doc: child_process: document uid and gid spawn() options

12 years agoV8: Reapply patches
isaacs [Tue, 23 Oct 2012 18:38:09 +0000 (11:38 -0700)]
V8: Reapply patches

12 years agoV8: Upgrade to 3.11.10.25
isaacs [Tue, 23 Oct 2012 18:35:27 +0000 (11:35 -0700)]
V8: Upgrade to 3.11.10.25

12 years agonpm: Upgrade to 1.1.64
isaacs [Tue, 23 Oct 2012 18:34:46 +0000 (11:34 -0700)]
npm: Upgrade to 1.1.64

12 years agotest: add typed arrays regression test
Ben Noordhuis [Tue, 23 Oct 2012 15:07:23 +0000 (17:07 +0200)]
test: add typed arrays regression test

Ensure that uint8 values >= 128 are correctly promoted to int8 <= -1.

12 years agotyped arrays: use `signed char` for signed int8s
Aaron Jacobs [Tue, 23 Oct 2012 05:43:51 +0000 (16:43 +1100)]
typed arrays: use `signed char` for signed int8s

The C standard allows plain `char` to be unsigned. The build environment
at Google trips this issue.

12 years agov8: use correct timezone information on Solaris
yangguo@chromium.org [Tue, 23 Oct 2012 13:04:05 +0000 (13:04 +0000)]
v8: use correct timezone information on Solaris

`timezone` variable contains the difference, in seconds, between UTC and
local standard time (see `man 3 localtime` on Solaris).

Call to `tzset` is required to apply contents of `TZ` variable to
`timezone` variable.

BUG=v8:2064

Review URL: https://chromiumcodereview.appspot.com/10967066
Patch from Maciej Małecki <me@mmalecki.com>.

This is a back-port of upstream commit r12802.

12 years agocrypto: fix DH use-after-free and memory leak
Ben Noordhuis [Sun, 21 Oct 2012 22:18:14 +0000 (00:18 +0200)]
crypto: fix DH use-after-free and memory leak

Fix a use-after-free bug and a memory leak in the error path of
DiffieHellman::ComputeSecret().

* the BIGNUM key was used after being freed with BN_free().
* the output buffer was not freed

12 years agocrypto: fix DH 1 byte buffer underflow
Ben Noordhuis [Sun, 21 Oct 2012 22:03:47 +0000 (00:03 +0200)]
crypto: fix DH 1 byte buffer underflow

Passing a bad key to DiffieHellman::ComputeSecret() made it zero the byte
before the heap allocated buffer due to an erroneous size calculation.

12 years agotest: add diffie-hellman regression test
Ben Noordhuis [Sun, 21 Oct 2012 21:55:52 +0000 (23:55 +0200)]
test: add diffie-hellman regression test

Exercises the error path in DiffieHellman::ComputeSecret() in src/node_crypto.cc

12 years agodoc: Typo. s/arguemnt/argument/
isaacs [Tue, 16 Oct 2012 17:59:23 +0000 (10:59 -0700)]
doc: Typo. s/arguemnt/argument/

12 years agotest: disable global variable check for "test-repl-options.js"
Nathan Rajlich [Mon, 15 Oct 2012 21:51:43 +0000 (14:51 -0700)]
test: disable global variable check for "test-repl-options.js"

Previously, the "global" mode of REPLs was broken when created after another
non-global REPL (they would end up sharing the same context). Now that "global"
mode is fixed for that case (b1e78cef097c682ed63528ad7efe294b18a9fb1d), this
test case gets its global scope modified with "module" and other REPL-specific
properties, so disable the global check.

12 years agoconfigure: turn on VFPv3 on ARMv7
Ben Noordhuis [Wed, 19 Sep 2012 12:37:08 +0000 (14:37 +0200)]
configure: turn on VFPv3 on ARMv7

Fixes a V8 build error caused by missing arm_fpu and arm_neon settings.

This is a back-port of commit bbf6b4e from the master branch.

Fixes #4142.

12 years agoRevert "Disable OpenSSL UI"
Ben Noordhuis [Mon, 15 Oct 2012 21:40:15 +0000 (23:40 +0200)]
Revert "Disable OpenSSL UI"

This reverts commit 1c88c3b3b56c6047180e116c5614dad2b13995f9.

It breaks the "read a password from stdin" functionality that OpenSSL provides.

Fixes #4059, #4143.

Conflicts:

deps/openssl/openssl.gyp

12 years agodocs: fix copy and paste error
Jan Lehnardt [Sun, 14 Oct 2012 12:44:06 +0000 (14:44 +0200)]
docs: fix copy and paste error

12 years agodoc: rectify http.ClientResponse close/end events
Ben Noordhuis [Fri, 12 Oct 2012 13:27:47 +0000 (15:27 +0200)]
doc: rectify http.ClientResponse close/end events

* The 'close' event doesn't emit an error object.

* It's possible for a 'close' event to come after an 'end' event, contrary to
  what the documentation said.

Fixes #4116.

12 years agorepl: ensure each REPL instance gets its own "context"
Nathan Rajlich [Fri, 12 Oct 2012 23:34:36 +0000 (16:34 -0700)]
repl: ensure each REPL instance gets its own "context"

Before there was this weird module-scoped "context" variable which seemingly
shared the "context" of subsequent REPL instances, unless ".clear" was invoked
inside the REPL. To be proper, we need to ensure that each REPL gets its own
"context" object. I literally don't know why this "sharing" behavior was in place
before, but it was just plain wrong.

12 years agodoc: set default background color to white
Max Ogden [Fri, 12 Oct 2012 18:31:59 +0000 (21:31 +0300)]
doc: set default background color to white

12 years agoNow working on 0.8.13
isaacs [Fri, 12 Oct 2012 15:57:25 +0000 (08:57 -0700)]
Now working on 0.8.13

12 years agoblog: Post about 0.8.12
isaacs [Fri, 12 Oct 2012 15:57:12 +0000 (08:57 -0700)]
blog: Post about 0.8.12

12 years agoMerge branch 'v0.8.12-release' into v0.8
isaacs [Fri, 12 Oct 2012 15:56:53 +0000 (08:56 -0700)]
Merge branch 'v0.8.12-release' into v0.8

12 years ago2012.10.12, Version 0.8.12 (Stable) v0.8.12
isaacs [Thu, 11 Oct 2012 21:22:13 +0000 (14:22 -0700)]
2012.10.12, Version 0.8.12 (Stable)

* npm: Upgrade to 1.1.63

* crypto: Reduce stability index to 2-Unstable (isaacs)

* windows: fix handle leak in uv_fs_utime (Bert Belder)

* windows: fix application crashed popup in debug version (Bert Belder)

* buffer: report proper retained size in profiler (Ben Noordhuis)

* buffer: fix byteLength with UTF-16LE (koichik)

* repl: make "end of input" JSON.parse() errors throw in the REPL (Nathan Rajlich)

* repl: make invalid RegExp modifiers throw in the REPL (Nathan Rajlich)

* http: handle multiple Proxy-Authenticate values (Willi Eggeling)

12 years agonpm: Upgrade to 1.1.63
isaacs [Thu, 11 Oct 2012 21:11:38 +0000 (14:11 -0700)]
npm: Upgrade to 1.1.63

12 years agodoc: Reduce crypto stability to 2-Unstable
isaacs [Thu, 11 Oct 2012 15:32:36 +0000 (08:32 -0700)]
doc: Reduce crypto stability to 2-Unstable

12 years agobuffer: report proper retained size in profiler
Ben Noordhuis [Wed, 10 Oct 2012 22:44:49 +0000 (00:44 +0200)]
buffer: report proper retained size in profiler

Make buffers report the proper retained size in heap snapshots.

Before this commit, Buffer objects would show up in the heap profiler as being
only a few hundred bytes large, even if the actual buffer was many megabytes.

12 years agouv: upgrade to b0c1a38
Bert Belder [Wed, 10 Oct 2012 15:18:48 +0000 (17:18 +0200)]
uv: upgrade to b0c1a38

12 years agocrypto: fix -Wtautological-compare warning
Ben Noordhuis [Sun, 7 Oct 2012 22:00:30 +0000 (00:00 +0200)]
crypto: fix -Wtautological-compare warning

12 years agodoc: consistent use of the callback argument
Andreas Madsen [Mon, 8 Oct 2012 17:10:29 +0000 (19:10 +0200)]
doc: consistent use of the callback argument

12 years agoFix -Wsizeof-array-argument compiler warning.
Andrew Paprocki [Sun, 7 Oct 2012 08:04:26 +0000 (10:04 +0200)]
Fix -Wsizeof-array-argument compiler warning.

12 years agorepl: move "isSyntaxError()" definition to the bottom
Nathan Rajlich [Sat, 6 Oct 2012 01:33:28 +0000 (18:33 -0700)]
repl: move "isSyntaxError()" definition to the bottom

fixes lint "line length too long" error

12 years agodoc: document the custom "inspect()" function behavior
Nathan Rajlich [Fri, 5 Oct 2012 23:48:13 +0000 (16:48 -0700)]
doc: document the custom "inspect()" function behavior

Closes #3361.

12 years agobuffer: fix byteLength with UTF-16LE
koichik [Tue, 2 Oct 2012 14:57:38 +0000 (23:57 +0900)]
buffer: fix byteLength with UTF-16LE

Fixes #4075.

12 years agodoc: better example for process.hrtime()
Alex Kocharin [Wed, 3 Oct 2012 19:02:14 +0000 (23:02 +0400)]
doc: better example for process.hrtime()

Fixes #3984.

12 years agodoc: stream: clarify meaning of 'drain' some more
Ben Noordhuis [Wed, 3 Oct 2012 11:38:03 +0000 (13:38 +0200)]
doc: stream: clarify meaning of 'drain' some more

Courtesy of Lee Coltrane (@coltrane).

12 years agodoc: stream: clarify meaning of 'drain' event
Ben Noordhuis [Mon, 1 Oct 2012 20:27:19 +0000 (22:27 +0200)]
doc: stream: clarify meaning of 'drain' event

12 years agodoc: Correct stream.write fd mention
isaacs [Mon, 1 Oct 2012 21:30:02 +0000 (14:30 -0700)]
doc: Correct stream.write fd mention

No streams actually work this way.

12 years agorepl: make "end of input" JSON.parse() errors throw in the REPL
Nathan Rajlich [Mon, 1 Oct 2012 18:36:06 +0000 (11:36 -0700)]
repl: make "end of input" JSON.parse() errors throw in the REPL

12 years agorepl: make invalid RegExp modifiers throw in the REPL
Nathan Rajlich [Mon, 1 Oct 2012 05:43:35 +0000 (22:43 -0700)]
repl: make invalid RegExp modifiers throw in the REPL

Fixes #4012.

12 years agoblog: s/LibUV/libuv/
isaacs [Sun, 30 Sep 2012 22:47:27 +0000 (15:47 -0700)]
blog: s/LibUV/libuv/

12 years agoblog: LXJS talk by @piscisaureus
isaacs [Sun, 30 Sep 2012 17:34:28 +0000 (10:34 -0700)]
blog: LXJS talk by @piscisaureus

12 years agohttp: handle multiple Proxy-Authenticate values
thewilli [Mon, 24 Sep 2012 08:18:05 +0000 (11:18 +0300)]
http: handle multiple Proxy-Authenticate values

Just as the 'WWW-Authenticate' HTTP header the 'Proxy-Authenticate' header might
be received several times as well. Currently only one value is preserved. This
change allows to receive multiple values concatenated by space and comma.

12 years agodoc: Make the CLA more simple/sane
isaacs [Thu, 27 Sep 2012 20:25:55 +0000 (13:25 -0700)]
doc: Make the CLA more simple/sane

1. Emails should go to @isaacs, not emily.
2. Ask for the electronic signature first, not the printed faxed thing.

12 years agoblog: Post about 0.8.11
isaacs [Thu, 27 Sep 2012 17:25:37 +0000 (10:25 -0700)]
blog: Post about 0.8.11

12 years agoNow working on 0.8.12
isaacs [Thu, 27 Sep 2012 17:25:12 +0000 (10:25 -0700)]
Now working on 0.8.12

12 years agoMerge branch 'v0.8.11-release' into v0.8
isaacs [Thu, 27 Sep 2012 17:24:32 +0000 (10:24 -0700)]
Merge branch 'v0.8.11-release' into v0.8

12 years ago2012.09.27, Version 0.8.11 (Stable) v0.8.11
isaacs [Thu, 27 Sep 2012 16:39:23 +0000 (09:39 -0700)]
2012.09.27, Version 0.8.11 (Stable)

* fs: Fix stat() size reporting for large files (Ben Noordhuis)

12 years agotest: pick another CNAME record to test dns queries
Bert Belder [Tue, 25 Sep 2012 23:56:42 +0000 (01:56 +0200)]
test: pick another CNAME record to test dns queries

Google.com no longer has a CNAME record.

12 years agofs: fix stat() reporting for large files
Ben Noordhuis [Tue, 25 Sep 2012 23:20:08 +0000 (01:20 +0200)]
fs: fix stat() reporting for large files

Use Number::New(), not Integer::New(). Large values won't fit in an Integer.

Apply to the size, ino and blocks fields.

12 years agoblog: Post about v0.8.10
isaacs [Tue, 25 Sep 2012 22:37:53 +0000 (15:37 -0700)]
blog: Post about v0.8.10

12 years agoNow working on 0.8.11
isaacs [Tue, 25 Sep 2012 22:36:10 +0000 (15:36 -0700)]
Now working on 0.8.11

12 years agoMerge branch 'v0.8.10-release' into v0.8
isaacs [Tue, 25 Sep 2012 22:33:01 +0000 (15:33 -0700)]
Merge branch 'v0.8.10-release' into v0.8

12 years ago2012.09.25, Version 0.8.10 (Stable) v0.8.10
isaacs [Tue, 25 Sep 2012 15:09:30 +0000 (08:09 -0700)]
2012.09.25, Version 0.8.10 (Stable)

* npm: Upgrade to 1.1.62

* repl: make invalid RegExps throw in the REPL (Nathan Rajlich)

* v8: loosen artificial mmap constraint (Bryan Cantrill)

* process: fix setuid() and setgid() error reporting (Ben Noordhuis)

* domain: Properly exit() on domain disposal (isaacs)

* fs: fix watchFile() missing deletion events (Ben Noordhuis)

* fs: fix assert in fs.watch() (Ben Noordhuis)

* fs: don't segfault on deeply recursive stat() (Ben Noordhuis)

* http: Remove timeout handler when data arrives (Frédéric Germain)

* http: make the client "res" object gets the same domain as "req" (Nathan Rajlich)

* windows: don't blow up when an invalid FD is used (Bert Belder)

* unix: map EDQUOT to UV_ENOSPC (Charlie McConnell)

* linux: improve /proc/cpuinfo parser (Ben Noordhuis)

* win/tty: reset background brightness when color is set to default (Bert Belder)

* unix: put child process stdio fds in blocking mode (Ben Noordhuis)

* unix: fix EMFILE busy loop (Ben Noordhuis)

* sunos: don't set TCP_KEEPALIVE (Ben Noordhuis)

* tls: Use slab allocator for memory management (Fedor Indutny)

* openssl: Use optimized assembly code for x86 and x64 (Bert Belder)

12 years agoopenssl: fix compilation issues on SmartOS x64
Bert Belder [Tue, 25 Sep 2012 19:25:55 +0000 (21:25 +0200)]
openssl: fix compilation issues on SmartOS x64

the SunOS linker is more strict than usual, so we have to be more
correct.

12 years agotest: Fix premature close in test-http-client-timeout-agent
isaacs [Tue, 25 Sep 2012 18:15:44 +0000 (11:15 -0700)]
test: Fix premature close in test-http-client-timeout-agent

12 years agotls: lint
isaacs [Tue, 25 Sep 2012 18:09:34 +0000 (11:09 -0700)]
tls: lint

cc @indutny >_<

12 years agodomain: Remove stray console.log
isaacs [Tue, 25 Sep 2012 18:08:44 +0000 (11:08 -0700)]
domain: Remove stray console.log

12 years agoopenssl: use optimized asm code on x86 and x64
Bert Belder [Wed, 12 Sep 2012 23:50:38 +0000 (01:50 +0200)]
openssl: use optimized asm code on x86 and x64

12 years agoopenssl: add generated asm code
Bert Belder [Sat, 8 Sep 2012 00:43:18 +0000 (02:43 +0200)]
openssl: add generated asm code

12 years agoopenssl: add 'clean' target to asm Makefile
Bert Belder [Fri, 21 Sep 2012 16:03:28 +0000 (18:03 +0200)]
openssl: add 'clean' target to asm Makefile

12 years agoopenssl: generate asm code with a Makefile
Ben Noordhuis [Mon, 10 Sep 2012 16:35:58 +0000 (18:35 +0200)]
openssl: generate asm code with a Makefile

12 years agoopenssl: disable HT sidechannel attack mitigation
Bert Belder [Fri, 21 Sep 2012 16:07:08 +0000 (18:07 +0200)]
openssl: disable HT sidechannel attack mitigation

It used to be off before. It's extremely unlikely that such an attack
would be a viable attack against node. And it makes AES much slower.

12 years agoopenssl: revert empty_OPENSSL_cpuid_setup.patch
Bert Belder [Wed, 12 Sep 2012 23:11:06 +0000 (01:11 +0200)]
openssl: revert empty_OPENSSL_cpuid_setup.patch

12 years agoopenssl: fix perlasm issue
Bert Belder [Wed, 12 Sep 2012 23:03:50 +0000 (01:03 +0200)]
openssl: fix perlasm issue

When perlasm generates MASM code it sets the assembler target to 468.
In this mode MASM refuses to assemble the CPUID instruction. Bumping
the target to 586 solves this problem.

12 years agoopenssl: add optimized bignum x64 asm code for windows
Bert Belder [Sat, 8 Sep 2012 00:08:22 +0000 (02:08 +0200)]
openssl: add optimized bignum x64 asm code for windows

12 years agotls: use slab allocator
Fedor Indutny [Thu, 5 Jul 2012 19:50:21 +0000 (15:50 -0400)]
tls: use slab allocator

12 years agonpm: upgrade to 1.1.62
isaacs [Tue, 25 Sep 2012 15:28:55 +0000 (08:28 -0700)]
npm: upgrade to 1.1.62

12 years agodoc: put API table of contents in alphabetical order
Adam Blackburn [Sat, 22 Sep 2012 22:48:47 +0000 (16:48 -0600)]
doc: put API table of contents in alphabetical order

12 years agohttp: make the client "res" object gets the same domain as "req"
Nathan Rajlich [Mon, 24 Sep 2012 18:30:26 +0000 (11:30 -0700)]
http: make the client "res" object gets the same domain as "req"

Fixes #4046.

12 years agorepl: make invalid RegExps throw in the REPL
Nathan Rajlich [Sat, 22 Sep 2012 01:46:16 +0000 (18:46 -0700)]
repl: make invalid RegExps throw in the REPL

Fixes #2746.

12 years agouv: upgrade to 39ca621
Bert Belder [Sat, 22 Sep 2012 01:53:16 +0000 (03:53 +0200)]
uv: upgrade to 39ca621

12 years agov8: loosen artificial mmap constraint
Bryan Cantrill [Tue, 18 Sep 2012 22:35:29 +0000 (15:35 -0700)]
v8: loosen artificial mmap constraint

Fixes #4010.

12 years agodomain: Properly exit() on domain disposal
isaacs [Thu, 20 Sep 2012 22:13:36 +0000 (15:13 -0700)]
domain: Properly exit() on domain disposal

This addresses #4034.  There are two problems happening:

1. The domain is not exited automatically when calling dispose() on it.
Then, since the domain is disposed, attempting to exit it again will do
nothing.

2. The active domain is stored on process.domain.  Since thrown errors
call `process.emit('uncaughtException', er)`, and the process is an
event emitter with a `.domain` member, it re-enters the domain a second
time before calling the error handler, pushing it onto the stack again.

Thus, if the handler calls `domain.dispose()`, then the domain is now on
the stack twice, and cannot be exited properly.  Since the domain is
disposed, any subsequent IO will be no-op'ed, since we've declared that
this context is done and best forgotten.

The solution here is twofold:

1. In EventEmitter.emit, do not enter the domain if `this===process`.
2. Automatically exit the domain when calling `domain.dispose()`.

12 years agoblog: Post for 0.9.2
isaacs [Tue, 18 Sep 2012 01:33:36 +0000 (18:33 -0700)]
blog: Post for 0.9.2

12 years agofs: fix watchFile() missing deletion events
Ben Noordhuis [Mon, 17 Sep 2012 15:40:23 +0000 (17:40 +0200)]
fs: fix watchFile() missing deletion events

Make sure the deletion event gets reported in the following scenario:

  1. Watch a file.
  2. The initial stat() goes okay.
  3. Something deletes the watched file.
  4. The second stat() fails with ENOENT.

The second stat() translates into the first 'change' event but a logic error
stopped it from getting emitted.

Fixes #4027.

12 years agodoc: fix three typos
Robin Lee [Sun, 2 Sep 2012 07:36:21 +0000 (15:36 +0800)]
doc: fix three typos

12 years agoprocess: fix setuid() and setgid() error reporting
Ben Noordhuis [Mon, 17 Sep 2012 05:17:11 +0000 (07:17 +0200)]
process: fix setuid() and setgid() error reporting

Zero errno before calling getgrnam_r() or getpwnam_r(). If errno had previously
been clobbered, node would report the wrong error.

12 years agofs: fix assert in fs.watch()
Ben Noordhuis [Fri, 14 Sep 2012 00:34:10 +0000 (02:34 +0200)]
fs: fix assert in fs.watch()

Fix the following error:

  FSEventWrap: Aborting due to unwrap failure at ../../src/fs_event_wrap.cc:169

It's possible and legal for a handle to be closed twice. HandleWrap::Close()
deals with that by ignoring the second close. Now FSEventWrap::Close() does
too.

Fixes #3997.

12 years agofs: don't segfault on deeply recursive stat()
Ben Noordhuis [Thu, 13 Sep 2012 23:59:44 +0000 (01:59 +0200)]
fs: don't segfault on deeply recursive stat()

Check that the calls to Integer::New() and Date::New() succeed and bail out if
they don't.

V8 returns an empty handle on stack overflow. Trying to set the empty handle as
a property on an object results in a NULL pointer dereference in release builds
and an assert in debug builds.

Fixes #4015.

12 years agov8: Replace VFP by VFP2 in common.gypi
Nathan Rajlich [Mon, 20 Aug 2012 19:06:29 +0000 (12:06 -0700)]
v8: Replace VFP by VFP2 in common.gypi

This fixes an omission in cl 10818026.
Patch by Nathan Rajlich.

Review URL: http://codereview.chromium.org/10913256

12 years agov8: Relax requirement from VFP3 to VFP2 where possible.
yangguo@chromium.org [Mon, 20 Aug 2012 00:01:32 +0000 (17:01 -0700)]
v8: Relax requirement from VFP3 to VFP2 where possible.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10818026

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@12194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

12 years agohttp: Remove timeout handler when data arrives
Frédéric Germain [Sun, 9 Sep 2012 12:32:40 +0000 (14:32 +0200)]
http: Remove timeout handler when data arrives

12 years agodoc: fs: clarfify fs.watch() documentation
Ben Noordhuis [Wed, 12 Sep 2012 15:04:31 +0000 (17:04 +0200)]
doc: fs: clarfify fs.watch() documentation

fs.watch() is implemented on all supported platforms but, depending on the
object being watched, doesn't always work reliably (or at all).

Fixes #4005.

12 years agodoc: http: expand request.headers documentation
Ben Noordhuis [Wed, 12 Sep 2012 00:46:45 +0000 (02:46 +0200)]
doc: http: expand request.headers documentation