0
0
mirror of https://github.com/nodejs/node.git synced 2024-11-29 23:16:30 +01:00
Cross-platform JavaScript runtime environment https://nodejs.org/
Go to file
Timothy J Fontaine 16934d9210 src: add HandleScope in HandleWrap::OnClose
Fixes a 4 byte leak on handles closing. AKA The Walmart leak.

MakeCallback doesn't have a HandleScope. That means the callers scope
will retain ownership of created handles from MakeCallback and related.
There is by default a wrapping HandleScope before uv_run, if the caller
doesn't have a HandleScope on the stack the global will take ownership
which won't be reaped until the uv loop exits.

If a uv callback is fired, and there is no enclosing HandleScope in the
cb, you will appear to leak 4-bytes for every invocation. Take heed.

cc @hueniverse
2013-11-12 11:23:19 -08:00
benchmark benchmark: Fix execArgv handling 2013-08-31 17:58:17 -07:00
deps uv: Upgrade to v0.10.19 2013-11-12 10:57:57 -08:00
doc doc: encoding is ignored if input is a Buffer 2013-11-07 11:02:19 -08:00
lib repl: do not insert duplicates into completions 2013-11-11 15:45:09 -08:00
src src: add HandleScope in HandleWrap::OnClose 2013-11-12 11:23:19 -08:00
test repl: do not insert duplicates into completions 2013-11-11 15:45:09 -08:00
tools gyp: update to bebdcea 2013-11-10 15:15:34 -08:00
.gitattributes
.gitignore tools: script release steps after jenkins build 2013-08-21 16:59:15 -07:00
.mailmap Update .mailmap and AUTHORS 2013-03-19 20:07:38 +01:00
.travis.yml
AUTHORS 2013.09.24, Version 0.10.19 (Stable) 2013-09-24 14:10:33 -07:00
BSDmakefile
ChangeLog 2013.10.18, Version 0.10.21 (Stable) 2013-10-18 14:26:27 -07:00
common.gypi Revert "build, windows: disable SEH" 2013-03-05 19:40:02 +01:00
configure gyp: update to bebdcea 2013-11-10 15:15:34 -08:00
CONTRIBUTING.md doc: clarify subsystems in CONTRIBUTING.md 2013-05-14 12:31:38 +02:00
LICENSE doc: Update LICENSE for npm's Artistic 2.0 2013-08-05 13:56:05 -07:00
Makefile gyp: update to bebdcea 2013-11-10 15:15:34 -08:00
node.gyp src: Add StringBytes static util class 2013-05-14 13:51:24 -07:00
README.md doc: link to pre-built binaries, add install note 2013-10-01 08:37:32 +02:00
vcbuild.bat build: vcbuild.bat fix for Visual Studio 2012 2013-05-03 11:32:32 +02:00

Evented I/O for V8 javascript. Build Status

To build:

Prerequisites (Unix only):

* GCC 4.2 or newer
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)

Unix/Macintosh:

./configure
make
make install

If your python binary is in a non-standard location or has a non-standard name, run the following instead:

export PYTHON=/path/to/python
$PYTHON ./configure
make
make install

Windows:

vcbuild.bat

You can download pre-built binaries for various operating systems from http://nodejs.org/download/. The Windows and OS X installers will prompt you for the location to install to. The tarballs are self-contained; you can extract them to a local directory with:

tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz

Or system-wide with:

cd /usr/local && tar --strip-components 1 -xzf \
                     /path/to/node-<version>-<platform>-<arch>.tar.gz

To run the tests:

Unix/Macintosh:

make test

Windows:

vcbuild.bat test

To build the documentation:

make doc

To read the documentation:

man doc/node.1

Resources for Newcomers