Include v8_embedder_string in the hash while preserving the existing hash when the string is empty. This lets embedders invalidate serialized data without touching V8 version number. Bug: 565605613 Change-Id: I3abae9c72c2d1d297e28e80f5bb59d444ffcedd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8457646 Auto-Submit: Deepak Mohan (Robo) <hop2deep@gmail.com> Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#110106}
32 lines
857 B
C++
32 lines
857 B
C++
// Copyright 2026 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.
|
|
|
|
#ifndef V8_TEST_COMMON_VERSION_UTILS_H_
|
|
#define V8_TEST_COMMON_VERSION_UTILS_H_
|
|
|
|
#include "src/utils/version.h"
|
|
|
|
namespace v8::internal {
|
|
|
|
class ScopedVersionEmbedderString final {
|
|
public:
|
|
explicit ScopedVersionEmbedderString(const char* embedder)
|
|
: previous_(Version::embedder_) {
|
|
Version::embedder_ = embedder;
|
|
}
|
|
|
|
~ScopedVersionEmbedderString() { Version::embedder_ = previous_; }
|
|
|
|
ScopedVersionEmbedderString(const ScopedVersionEmbedderString&) = delete;
|
|
ScopedVersionEmbedderString& operator=(const ScopedVersionEmbedderString&) =
|
|
delete;
|
|
|
|
private:
|
|
const char* const previous_;
|
|
};
|
|
|
|
} // namespace v8::internal
|
|
|
|
#endif // V8_TEST_COMMON_VERSION_UTILS_H_
|