Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jan 18, 2013
  1. @isaacs
Commits on Jan 16, 2013
  1. @trevnorris @isaacs

    buffer: floating point read/write improvements

    trevnorris authored isaacs committed
    * floating point operations are approx 4x's faster
    * Now write quiet NaN's
    * all read/write on floating point now done in C, so no more need for
    * float values have more accurate min/max value checks
    * add additional benchmarks for buffers read/write
    * created benchmark/_bench_timer.js which is a simple library that
      can be included into any benchmark and provides an intelligent tracker
      for sync and async tests
    * add benchmarks for DataView set methods
    * add checks and tests to make sure offset is greater than 0
Commits on Jan 7, 2013
  1. @bnoordhuis
  2. @bnoordhuis
  3. @bnoordhuis
Commits on Dec 28, 2012
  1. @bnoordhuis

    buffer: speed up base64 encoding by 20%

    bnoordhuis authored
    Remove a lot of branches from the inner loop. Speeds up buf.toString('base64')
    by about 20%.
      $ time out/Release/node benchmark/buffer-base64-encode.js
      real    0m6.607s
      user    0m5.508s
      sys     0m1.088s
      $ time out/Release/node benchmark/buffer-base64-encode.js
      real    0m5.520s
      user    0m4.520s
      sys     0m0.992s
Commits on Dec 17, 2012
  1. @isaacs

    Revert "buffer: allocate memory with mmap()"

    isaacs authored
    Also Revert "buffer: use MAP_ANON, fix OS X build"
    This reverts commit ddb1560.
    This reverts commit 2433ec8.
  2. @bnoordhuis
Commits on Dec 16, 2012
  1. @bnoordhuis

    buffer: allocate memory with mmap()

    bnoordhuis authored
    Work around an issue with the glibc malloc() implementation where memory blocks
    are never returned to the operating system when they are allocated with brk()
    and have overlapping lifecycles.
    Fixes #4283.
Commits on Dec 6, 2012
  1. @bnoordhuis
Commits on Oct 13, 2012
  1. @TooTallNate

    Merge remote-tracking branch 'origin/v0.8'

    TooTallNate authored
Commits on Oct 10, 2012
  1. @bnoordhuis

    buffer: report proper retained size in profiler

    bnoordhuis authored
    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.
Commits on Sep 13, 2012
  1. @langpavel @bnoordhuis

    buffer: update constructor prototype

    langpavel authored bnoordhuis committed
    Change Buffer::New(char*, size_t) to Buffer::New(const char*, size_t).
Commits on Aug 16, 2012
  1. @piscisaureus
Commits on Apr 17, 2012
  1. @isaacs
Commits on Mar 30, 2012
  1. @bnoordhuis
Commits on Mar 23, 2012
  1. @bnoordhuis

    Avoiding unnecessary ToString() calls

    ssuda authored bnoordhuis committed
    String::Utf8Value and String::AsciiValue constructors take Handle<Value>
    So no need to convert to Handle<String>
Commits on Mar 9, 2012
  1. @bnoordhuis
  2. @bnoordhuis

    buffer: throw from constructor if length > kMaxLength

    bnoordhuis authored
    Throw, don't abort. `new Buffer(0x3fffffff + 1)` used to bring down the process
    with the following error message:
      FATAL ERROR: v8::Object::SetIndexedPropertiesToExternalArrayData() length
      exceeds max acceptable value
    Fixes #2280.
Commits on Feb 23, 2012
  1. @bnoordhuis

    Remove unused variables.

    bnoordhuis authored
Commits on Feb 21, 2012
  1. @bnoordhuis
Commits on Feb 6, 2012
  1. @isaacs

    Merge remote-tracking branch 'ry/v0.6'

    isaacs authored
  2. @bnoordhuis

    Revert support for isolates.

    bnoordhuis authored
    It was decided that the performance benefits that isolates offer (faster spin-up
    times for worker processes, faster inter-worker communication, possibly a lower
    memory footprint) are not actual bottlenecks for most people and do not outweigh
    the potential stability issues and intrusive changes to the code base that
    first-class support for isolates requires.
    Hence, this commit backs out all isolates-related changes.
    Good bye, isolates. We hardly knew ye.
Commits on Feb 2, 2012
  1. @bnoordhuis

    buffers: fix intermittent out of bounds error

    bnoordhuis authored
    The base64 decoder would intermittently throw an out-of-bounds exception when
    the buffer in `buf.write('', 'base64')` was a zero-sized buffer located at the
    end of the slab.
    Fixes #2657.
  2. @bnoordhuis

    buffers: honor length argument in base64 decoder

    bnoordhuis authored
    Honor the length argument in `buf.write(s, 0, buf.length, 'base64')`. Before
    this commit, the length argument was ignored. The decoder would keep writing
    until it hit the end of the buffer. Since most buffers in Node are slices of
    a parent buffer (the slab), this bug would overwrite the content of adjacent
    The bug is trivially demonstrated with the following test case:
        var assert = require('assert');
        var a = Buffer(3);
        var b = Buffer('xxx');
        a.write('aaaaaaaa', 'base64');
        assert.equal(b.toString(), 'xxx');
    This commit coincidentally also fixes a bug where Buffer._charsWritten was not
    updated for zero length buffers.
Commits on Dec 16, 2011
  1. Remove platform files, and use uv platform api

    Igor Zinkovsky authored
Commits on Dec 8, 2011
  1. @ry
Commits on Nov 9, 2011
  1. @bnoordhuis
Commits on Oct 19, 2011
  1. @koichik

    buffer: use NO_NULL_TERMINATION flag

    koichik authored
    Refs #394.
    Fixes #1902.
Commits on Sep 8, 2011
  1. @ry

    Merge remote branch 'origin/v0.4'

    ry authored
Commits on Sep 3, 2011
  1. @koichik
Commits on Sep 2, 2011
  1. @koichik
Commits on Aug 26, 2011
  1. @ry

    Fix build - due to V8 API change

    ry authored
Commits on Aug 2, 2011
  1. @piscisaureus
Commits on Jul 26, 2011
  1. @bnoordhuis
Something went wrong with that request. Please try again.