summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnna Henningsen <anna@addaleax.net>2018-04-28 20:50:19 +0200
committerAnna Henningsen <anna@addaleax.net>2018-04-29 23:42:42 +0200
commit283a967e356311a467113eea450a81827d43c969 (patch)
treeec0bfe54d14bbd98d6f73995e5147e5f2372a134
parent45c7e03f400bbb0e7d037ae470d291bce2183155 (diff)
downloadnode-new-283a967e356311a467113eea450a81827d43c969.tar.gz
src: avoid `std::make_unique`
Work around https://github.com/nodejs/build/issues/1254, which effectively breaks stress test CI and CITGM, by avoiding `std::make_unique` for now. This workaround should be reverted once that issue is resolved. Refs: https://github.com/nodejs/build/issues/1254 PR-URL: https://github.com/nodejs/node/pull/20386 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Matheus Marchini <matheus@sthima.com>
-rw-r--r--src/inspector_agent.cc8
-rw-r--r--src/inspector_io.cc4
-rw-r--r--src/inspector_js_api.cc4
3 files changed, 9 insertions, 7 deletions
diff --git a/src/inspector_agent.cc b/src/inspector_agent.cc
index 1530b20645..4e0c04a7b9 100644
--- a/src/inspector_agent.cc
+++ b/src/inspector_agent.cc
@@ -367,8 +367,9 @@ class NodeInspectorClient : public V8InspectorClient {
int connectFrontend(std::unique_ptr<InspectorSessionDelegate> delegate) {
events_dispatched_ = true;
int session_id = next_session_id_++;
- channels_[session_id] =
- std::make_unique<ChannelImpl>(client_, std::move(delegate));
+ // TODO(addaleax): Revert back to using make_unique once we get issues
+ // with CI resolved (i.e. revert the patch that added this comment).
+ channels_[session_id].reset(new ChannelImpl(client_, std::move(delegate)));
return session_id;
}
@@ -569,7 +570,8 @@ void Agent::Stop() {
std::unique_ptr<InspectorSession> Agent::Connect(
std::unique_ptr<InspectorSessionDelegate> delegate) {
int session_id = client_->connectFrontend(std::move(delegate));
- return std::make_unique<InspectorSession>(session_id, client_);
+ return std::unique_ptr<InspectorSession>(
+ new InspectorSession(session_id, client_));
}
void Agent::WaitForDisconnect() {
diff --git a/src/inspector_io.cc b/src/inspector_io.cc
index 5e0d29d3ca..38d88d7ab8 100644
--- a/src/inspector_io.cc
+++ b/src/inspector_io.cc
@@ -357,8 +357,8 @@ std::vector<std::string> InspectorIo::GetTargetIds() const {
TransportAction InspectorIo::Attach(int session_id) {
Agent* agent = parent_env_->inspector_agent();
fprintf(stderr, "Debugger attached.\n");
- sessions_[session_id] =
- agent->Connect(std::make_unique<IoSessionDelegate>(this, session_id));
+ sessions_[session_id] = agent->Connect(std::unique_ptr<IoSessionDelegate>(
+ new IoSessionDelegate(this, session_id)));
return TransportAction::kAcceptSession;
}
diff --git a/src/inspector_js_api.cc b/src/inspector_js_api.cc
index 3d05b2f6fe..37cdcecd61 100644
--- a/src/inspector_js_api.cc
+++ b/src/inspector_js_api.cc
@@ -66,8 +66,8 @@ class JSBindingsConnection : public AsyncWrap {
callback_(env->isolate(), callback) {
Wrap(wrap, this);
Agent* inspector = env->inspector_agent();
- session_ = inspector->Connect(
- std::make_unique<JSBindingsSessionDelegate>(env, this));
+ session_ = inspector->Connect(std::unique_ptr<JSBindingsSessionDelegate>(
+ new JSBindingsSessionDelegate(env, this)));
}
void OnMessage(Local<Value> value) {