Skip to content
Commits on Jan 23, 2013
  1. @trevnorris @bnoordhuis

    buffer: remove float write range checks

    trevnorris committed with bnoordhuis
    Removed range checks when writing float values, and removed a few
    includes and defines. Also updated api docs to reflect that invalid 32
    bit float is an unspecified behavior.
Commits on Jan 18, 2013
  1. @isaacs

    Merge remote-tracking branch 'ry/v0.8' into master

    isaacs committed
    Conflicts:
    	AUTHORS
    	ChangeLog
    	src/node_version.h
    	test/simple/test-buffer.js
  2. @isaacs
Commits on Jan 17, 2013
  1. @bnoordhuis

    buffer: reject negative SlowBuffer offsets

    bnoordhuis committed
    Reject negative offsets in SlowBuffer::MakeFastBuffer(), it allows
    the creation of buffers that point to arbitrary addresses.
    
    Reported by Trevor Norris.
Commits on Jan 16, 2013
  1. @trevnorris @isaacs

    buffer: floating point read/write improvements

    trevnorris committed with isaacs
    Improvements:
    * 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
      lib/buffer_ieee754.js
    * 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 committed
    Remove a lot of branches from the inner loop. Speeds up buf.toString('base64')
    by about 20%.
    
    Before:
    
      $ time out/Release/node benchmark/buffer-base64-encode.js
      real    0m6.607s
      user    0m5.508s
      sys     0m1.088s
    
    After:
    
      $ 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 committed
    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 committed
    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 committed
    Conflicts:
    	AUTHORS
    	ChangeLog
    	deps/uv/test/runner-win.c
    	doc/api/process.markdown
    	lib/repl.js
    	src/node_crypto.cc
    	src/node_version.h
Commits on Oct 10, 2012
  1. @bnoordhuis

    buffer: report proper retained size in profiler

    bnoordhuis committed
    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 committed with bnoordhuis
    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 committed with bnoordhuis
    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 committed
    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 committed
Commits on Feb 21, 2012
  1. @bnoordhuis
Commits on Feb 6, 2012
  1. @isaacs

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

    isaacs committed
    Conflicts:
    	ChangeLog
    	deps/v8/src/version.cc
    	deps/v8/tools/gyp/v8.gyp
    	doc/about/index.html
    	doc/community/index.html
    	doc/index.html
    	doc/logos/index.html
    	doc/template.html
    	lib/path.js
    	lib/querystring.js
    	src/node_version.h
  2. @bnoordhuis

    Revert support for isolates.

    bnoordhuis committed
    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 committed
    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 committed
    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
    buffers.
    
    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 committed
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 committed
    Refs #394.
    Fixes #1902.
Commits on Sep 8, 2011
  1. @ry

    Merge remote branch 'origin/v0.4'

    ry committed
    Conflicts:
    	lib/net.js
    	test/simple/test-buffer.js
Commits on Sep 3, 2011
  1. @koichik
Commits on Sep 2, 2011
  1. @koichik
Something went wrong with that request. Please try again.