Allow to neuter array buffer twice in tests.
R=jarin@chromium.org Review URL: https://codereview.chromium.org/209083005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
322a474bf2
commit
de690b656f
@ -911,6 +911,10 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ArrayBufferIsView) {
|
||||
RUNTIME_FUNCTION(MaybeObject*, Runtime_ArrayBufferNeuter) {
|
||||
HandleScope scope(isolate);
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSArrayBuffer, array_buffer, 0);
|
||||
if (array_buffer->backing_store() == NULL) {
|
||||
CHECK(Smi::FromInt(0) == array_buffer->byte_length());
|
||||
return isolate->heap()->undefined_value();
|
||||
}
|
||||
ASSERT(!array_buffer->is_external());
|
||||
void* backing_store = array_buffer->backing_store();
|
||||
size_t byte_length = NumberToSize(isolate, array_buffer->byte_length());
|
||||
|
9
test/mjsunit/neuter-twice.js
Normal file
9
test/mjsunit/neuter-twice.js
Normal file
@ -0,0 +1,9 @@
|
||||
// Copyright 2014 the V8 project authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
//
|
||||
// Flags: --allow-natives-syntax
|
||||
|
||||
var ab = new ArrayBuffer(100);
|
||||
%ArrayBufferNeuter(ab);
|
||||
%ArrayBufferNeuter(ab);
|
Loading…
Reference in New Issue
Block a user