Skip to content

Commit 339b52f

Browse files
joyeecheungdanielleadams
authored andcommitted
src: make util.h self-containted
Before it depended on util-inl.h. Fix it by moving MaybeStackBuffer::AllocateSufficientStorage() into util-inl.h PR-URL: #46817 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]>
1 parent 34ba230 commit 339b52f

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

src/util-inl.h

+16
Original file line numberDiff line numberDiff line change
@@ -510,6 +510,22 @@ SlicedArguments::SlicedArguments(
510510
(*this)[i] = args[i + start];
511511
}
512512

513+
template <typename T, size_t kStackStorageSize>
514+
void MaybeStackBuffer<T, kStackStorageSize>::AllocateSufficientStorage(
515+
size_t storage) {
516+
CHECK(!IsInvalidated());
517+
if (storage > capacity()) {
518+
bool was_allocated = IsAllocated();
519+
T* allocated_ptr = was_allocated ? buf_ : nullptr;
520+
buf_ = Realloc(allocated_ptr, storage);
521+
capacity_ = storage;
522+
if (!was_allocated && length_ > 0)
523+
memcpy(buf_, buf_st_, length_ * sizeof(buf_[0]));
524+
}
525+
526+
length_ = storage;
527+
}
528+
513529
template <typename T, size_t S>
514530
ArrayBufferViewContents<T, S>::ArrayBufferViewContents(
515531
v8::Local<v8::Value> value) {

src/util.h

+1-13
Original file line numberDiff line numberDiff line change
@@ -411,19 +411,7 @@ class MaybeStackBuffer {
411411
// This method can be called multiple times throughout the lifetime of the
412412
// buffer, but once this has been called Invalidate() cannot be used.
413413
// Content of the buffer in the range [0, length()) is preserved.
414-
void AllocateSufficientStorage(size_t storage) {
415-
CHECK(!IsInvalidated());
416-
if (storage > capacity()) {
417-
bool was_allocated = IsAllocated();
418-
T* allocated_ptr = was_allocated ? buf_ : nullptr;
419-
buf_ = Realloc(allocated_ptr, storage);
420-
capacity_ = storage;
421-
if (!was_allocated && length_ > 0)
422-
memcpy(buf_, buf_st_, length_ * sizeof(buf_[0]));
423-
}
424-
425-
length_ = storage;
426-
}
414+
void AllocateSufficientStorage(size_t storage);
427415

428416
void SetLength(size_t length) {
429417
// capacity() returns how much memory is actually available.

0 commit comments

Comments
 (0)