前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >18.3.26日报

18.3.26日报

作者头像
龙泉寺扫地僧
发布2019-02-20 10:04:42
5310
发布2019-02-20 10:04:42
举报
文章被收录于专栏:盟主来了盟主来了

1,给window.scrollX设置值会导致堆栈溢出,看堆栈是反复进入js的访问器回调导致。但发现github上最新代码反而没问题。一开始以为是v8-5-7和miniblink49哪个代码不兼容。但看起来不是。

2,修改v8 5.7开启devtools失效的bug。原因是getv8version这函数找不到。新v8确实移除了,但不知道为何debug.js这个v8自带的js却用到了。

给window对象的scrollX设置访问器 > minichrome.exe!v8::internal::Factory::NewAccessorPair() 行 229 C++ minichrome.exe!v8::internal::LookupIterator::TransitionToAccessorProperty(v8::internal::Handle<v8::internal::Object> getter={...}, v8::internal::Handle<v8::internal::Object> setter={...}, v8::internal::PropertyAttributes attributes=NONE) 行 502 C++ minichrome.exe!v8::internal::JSObject::DefineAccessor(v8::internal::LookupIterator * it=0x0c03ad00, v8::internal::Handle<v8::internal::Object> getter={...}, v8::internal::Handle<v8::internal::Object> setter={...}, v8::internal::PropertyAttributes attributes=NONE) 行 8873 C++ minichrome.exe!v8::internal::JSObject::DefineAccessor(v8::internal::Handle<v8::internal::JSObject> object={...}, v8::internal::Handle<v8::internal::Name> name={...}, v8::internal::Handle<v8::internal::Object> getter={...}, v8::internal::Handle<v8::internal::Object> setter={...}, v8::internal::PropertyAttributes attributes=NONE) 行 8840 C++ minichrome.exe!v8::internal::`anonymous namespace'::DefineAccessorProperty(v8::internal::Isolate * isolate=0x00556420, v8::internal::Handle<v8::internal::JSObject> object={...}, v8::internal::Handle<v8::internal::Name> name={...}, v8::internal::Handle<v8::internal::Object> getter={...}, v8::internal::Handle<v8::internal::Object> setter={...}, v8::internal::PropertyAttributes attributes=NONE, bool force_instantiate=false) 行 95 C++ minichrome.exe!v8::internal::`anonymous namespace'::ConfigureInstance<v8::internal::ObjectTemplateInfo>(v8::internal::Isolate * isolate=0x00556420, v8::internal::Handle<v8::internal::JSObject> obj={...}, v8::internal::Handle<v8::internal::ObjectTemplateInfo> data={...}, bool is_hidden_prototype=false) 行 252 C++ minichrome.exe!v8::internal::`anonymous namespace'::InstantiateObject(v8::internal::Isolate * isolate=0x00556420, v8::internal::Handle<v8::internal::ObjectTemplateInfo> info={...}, v8::internal::Handle<v8::internal::JSReceiver> new_target={...}, bool is_hidden_prototype=false) 行 395 C++ minichrome.exe!v8::internal::`anonymous namespace'::InstantiateFunction(v8::internal::Isolate * isolate=0x00556420, v8::internal::Handle<v8::internal::FunctionTemplateInfo> data={...}, v8::internal::Handle<v8::internal::Name> name={...}) 行 457 C++ minichrome.exe!v8::internal::`anonymous namespace'::InstantiateObject(v8::internal::Isolate * isolate=0x00556420, v8::internal::Handle<v8::internal::ObjectTemplateInfo> info={...}, v8::internal::Handle<v8::internal::JSReceiver> new_target={...}, bool is_hidden_prototype=false) 行 383 C++ minichrome.exe!v8::internal::ApiNatives::InstantiateObject(v8::internal::Handle<v8::internal::ObjectTemplateInfo> data={...}, v8::internal::Handle<v8::internal::JSReceiver> new_target={...}) 行 530 C++ minichrome.exe!v8::internal::Genesis::ConfigureApiObject(v8::internal::Handle<v8::internal::JSObject> object={...}, v8::internal::Handle<v8::internal::ObjectTemplateInfo> object_template={...}) 行 4295 C++ minichrome.exe!v8::internal::Genesis::ConfigureGlobalObjects(v8::Local<v8::ObjectTemplate> global_proxy_template={...}) 行 4262 C++ minichrome.exe!v8::internal::Genesis::Genesis(v8::internal::Isolate * isolate=0x00556420, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy> maybe_global_proxy={...}, v8::Local<v8::ObjectTemplate> global_proxy_template={...}, unsigned int context_snapshot_index=0, v8::internal::GlobalContextType context_type=FULL_CONTEXT) 行 4563 C++ minichrome.exe!v8::internal::Bootstrapper::CreateEnvironment(v8::internal::MaybeHandle<v8::internal::JSGlobalProxy> maybe_global_proxy={...}, v8::Local<v8::ObjectTemplate> global_proxy_template={...}, v8::ExtensionConfiguration * extensions=0x0c03b744, unsigned int context_snapshot_index=0, v8::internal::GlobalContextType context_type=FULL_CONTEXT) 行 314 C++ minichrome.exe!v8::InvokeBootstrapper<v8::internal::Context>::Invoke(v8::internal::Isolate * isolate=0x00556420, v8::internal::MaybeHandle<v8::internal::JSGlobalProxy> maybe_global_proxy={...}, v8::Local<v8::ObjectTemplate> global_object_template={...}, v8::ExtensionConfiguration * extensions=0x0c03b744, unsigned int context_snapshot_index=0) 行 6112 C++ minichrome.exe!v8::CreateEnvironment<v8::internal::Context>(v8::internal::Isolate * isolate=0x00556420, v8::ExtensionConfiguration * extensions=0x0c03b744, v8::MaybeLocal<v8::ObjectTemplate> maybe_global_template={...}, v8::MaybeLocal<v8::Value> maybe_global_proxy={...}, unsigned int context_snapshot_index=0) 行 6185 C++ minichrome.exe!v8::NewContext(v8::Isolate * external_isolate=0x00556420, v8::ExtensionConfiguration * extensions=0x0c03b744, v8::MaybeLocal<v8::ObjectTemplate> global_template={...}, v8::MaybeLocal<v8::Value> global_object={...}, unsigned int context_snapshot_index=0) 行 6214 C++ minichrome.exe!v8::Context::New(v8::Isolate * external_isolate=0x00556420, v8::ExtensionConfiguration * extensions=0x0c03b744, v8::MaybeLocal<v8::ObjectTemplate> global_template={...}, v8::MaybeLocal<v8::Value> global_object={...}) 行 6230 C++ minichrome.exe!blink::LocalWindowProxy::createContext() 行 158 C++ minichrome.exe!blink::LocalWindowProxy::initialize() 行 93 C++ minichrome.exe!blink::WindowProxy::initializeIfNeeded() 行 175 C++ > node.dll!v8::internal::Factory::NewAccessorInfo() 行 1058 C++ node.dll!v8::`anonymous namespace'::MakeAccessorInfo<void (__cdecl*)(v8::Local<v8::Name>,v8::PropertyCallbackInfo<v8::Value> const &),void (__cdecl*)(v8::Local<v8::Name>,v8::Local<v8::Value>,v8::PropertyCallbackInfo<void> const &)>(v8::Local<v8::Name> name={...}, void (v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value> &) * getter=0x0f79f5a2, void (v8::Local<v8::Name>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void> &) * setter=0x0f7a0d83, v8::Local<v8::Value> data={...}, v8::AccessControl settings=DEFAULT, v8::PropertyAttribute attributes=None, v8::Local<v8::AccessorSignature> signature={...}, bool is_special_data_property=false, bool replace_on_access=false) 行 1384 C++ node.dll!v8::TemplateSetAccessor<void (__cdecl*)(v8::Local<v8::String>,v8::PropertyCallbackInfo<v8::Value> const &),void (__cdecl*)(v8::Local<v8::String>,v8::Local<v8::Value>,v8::PropertyCallbackInfo<void> const &),v8::Local<v8::Value>,v8::ObjectTemplate>(v8::ObjectTemplate * template_obj=0x009d5aa0, v8::Local<v8::Name> name={...}, void (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value> &) * getter=0x0f79f5a2, void (v8::Local<v8::String>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void> &) * setter=0x0f7a0d83, v8::Local<v8::Value> data={...}, v8::AccessControl settings=DEFAULT, v8::PropertyAttribute attribute=None, v8::Local<v8::AccessorSignature> signature={...}, bool is_special_data_property=false, bool replace_on_access=false) 行 1563 C++ node.dll!v8::ObjectTemplate::SetAccessor(v8::Local<v8::Name> name={...}, void (v8::Local<v8::Name>, const v8::PropertyCallbackInfo<v8::Value> &) * getter=0x0f79f5a2, void (v8::Local<v8::Name>, v8::Local<v8::Value>, const v8::PropertyCallbackInfo<void> &) * setter=0x0f7a0d83, v8::Local<v8::Value> data={...}, v8::AccessControl settings=DEFAULT, v8::PropertyAttribute attribute=None, v8::Local<v8::AccessorSignature> signature={...}) 行 1632 C++ node.dll!blink::`anonymous namespace'::installAttributeInternal(v8::Isolate * isolate=0x009a9060, v8::Local<v8::ObjectTemplate> instanceTemplate={...}, v8::Local<v8::ObjectTemplate> prototypeTemplate={...}, const blink::V8DOMConfiguration::AttributeConfiguration & attribute={...}, const blink::DOMWrapperWorld & world={...}) 行 59 C++ node.dll!blink::V8DOMConfiguration::installAttributes(v8::Isolate * isolate=0x009a9060, v8::Local<v8::ObjectTemplate> instanceTemplate={...}, v8::Local<v8::ObjectTemplate> prototypeTemplate={...}, const blink::V8DOMConfiguration::AttributeConfiguration * attributes=0x10b786a0, unsigned int attributeCount=383) 行 196 C++ node.dll!blink::V8DOMConfiguration::installDOMClassTemplate(v8::Isolate * isolate=0x009a9060, v8::Local<v8::FunctionTemplate> functionDescriptor={...}, const char * interfaceName=0x10576fd0, v8::Local<v8::FunctionTemplate> parentClass={...}, unsigned int fieldCount=3, const blink::V8DOMConfiguration::AttributeConfiguration * attributes=0x10b786a0, unsigned int attributeCount=404, const blink::V8DOMConfiguration::AccessorConfiguration * accessors=0x00000000, unsigned int accessorCount=0, const blink::V8DOMConfiguration::MethodConfiguration * callbacks=0x10b7bf70, unsigned int callbackCount=28) 行 288 C++ node.dll!blink::V8Window::installV8WindowTemplate(v8::Local<v8::FunctionTemplate> functionTemplate={...}, v8::Isolate * isolate=0x009a9060) 行 7624 C++ node.dll!blink::V8WindowPartial::installV8WindowTemplate(v8::Local<v8::FunctionTemplate> functionTemplate={...}, v8::Isolate * isolate=0x009a9060) 行 1712 C++ node.dll!blink::V8DOMConfiguration::domClassTemplate(v8::Isolate * isolate=0x009a9060, blink::WrapperTypeInfo * wrapperTypeInfo=0x10b785e0, void (v8::Local<v8::FunctionTemplate>, v8::Isolate *) * configureDOMClassTemplate=0x0f7bbadd) 行 305 C++ node.dll!blink::V8Window::domTemplate(v8::Isolate * isolate=0x009a9060) 行 8203 C++

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年03月27日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档