-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
file src/node_main_instance.cc
about line 14
#if HAVE_INSPECTOR
#include "inspector/worker_inspector.h" // ParentInspectorHandle
#endif
//////////////////////////////////
//#espresso ,#1
#include "../src/libespresso/bridge2.h"
void DoEngineSetupCallback(JsEngine* engine, JsContext* jsContext);
void DoEngineClosingCallback(JsEngine* engine,
JsContext* jsContext,
int exitCode);
//////////////////////////////////
namespace node {
using v8::Context;
using v8::HandleScope;
patch 1: src/node_main_instance.cc
about line 151
void NodeMainInstance::Run(int* exit_code, Environment* env) {
if (*exit_code == 0) {
/////////////////////////////
//#espresso ,#2
JsEngine* jsEngine = JsEngine::NewFromExistingIsolate(isolate_);
v8::Persistent<Context>* pcontext =
new v8::Persistent<Context>(isolate_, env->context());
JsContext* jscontext =
JsContext::NewFromExistingContext(0, jsEngine, pcontext);
DoEngineSetupCallback(jsEngine, jscontext);
////////////////////////////////
LoadEnvironment(env, StartExecutionCallback{});
*exit_code = SpinEventLoop(env).FromMaybe(1);
//////////////////////////////////
////#espresso ,#3
DoEngineClosingCallback(jsEngine, jscontext, *exit_code);
///////////////////////////////
}
ResetStdio();patch 2&3: src/node_main_instance.cc
Metadata
Metadata
Assignees
Labels
No labels