diff options
Diffstat (limited to 'Source/JavaScriptCore/runtime/DataView.cpp')
-rw-r--r-- | Source/JavaScriptCore/runtime/DataView.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/Source/JavaScriptCore/runtime/DataView.cpp b/Source/JavaScriptCore/runtime/DataView.cpp index 0c83d6e95..3b5871ba3 100644 --- a/Source/JavaScriptCore/runtime/DataView.cpp +++ b/Source/JavaScriptCore/runtime/DataView.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013 Apple Inc. All rights reserved. + * Copyright (C) 2013, 2016 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -26,33 +26,34 @@ #include "config.h" #include "DataView.h" +#include "JSCInlines.h" #include "JSDataView.h" #include "JSGlobalObject.h" namespace JSC { -DataView::DataView(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned byteLength) - : ArrayBufferView(buffer, byteOffset) +DataView::DataView(RefPtr<ArrayBuffer>&& buffer, unsigned byteOffset, unsigned byteLength) + : ArrayBufferView(WTFMove(buffer), byteOffset) , m_byteLength(byteLength) { } -PassRefPtr<DataView> DataView::create( - PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned byteLength) +Ref<DataView> DataView::create( + RefPtr<ArrayBuffer>&& buffer, unsigned byteOffset, unsigned byteLength) { - return adoptRef(new DataView(buffer, byteOffset, byteLength)); + return adoptRef(*new DataView(WTFMove(buffer), byteOffset, byteLength)); } -PassRefPtr<DataView> DataView::create(PassRefPtr<ArrayBuffer> passedBuffer) +Ref<DataView> DataView::create(RefPtr<ArrayBuffer>&& buffer) { - RefPtr<ArrayBuffer> buffer = passedBuffer; - return create(buffer, 0, buffer->byteLength()); + unsigned byteLength = buffer->byteLength(); + return create(WTFMove(buffer), 0, byteLength); } JSArrayBufferView* DataView::wrap(ExecState* exec, JSGlobalObject* globalObject) { return JSDataView::create( - exec, globalObject->typedArrayStructure(TypeDataView), buffer(), byteOffset(), + exec, globalObject->typedArrayStructure(TypeDataView), possiblySharedBuffer(), byteOffset(), byteLength()); } |