18.7.18日报

1,修复http://shome.ouchn.cn/ 的昨天的那问题。但原因还有一个。就是localstorage会多次从文件里读取。这样就和内存中的有冲突。所以现在改成启动的时候只读一次,然后每次setitem了再保存文件。

2,修复createview里调用WM_SIZE再调用wkeWake会崩溃的问题。原因是重入检查的断言被触发了。现在去掉断言,如果条件为真,就直接不走进一步的逻辑了。

3,跟进http://lufengxiaoyao.landwind.com/m/index.html 这网站会崩溃的问题。原因是这垃圾网站一下子画了一个8001x4001的canvase。导致内存申请过大,申请不到了

下面是堆栈:

     user32.dll!_NtUserWaitMessage@0()    未知
     user32.dll!_DialogBox2@16()    未知
     user32.dll!_InternalDialogBox@24()    未知
     user32.dll!_SoftModalMessageBox@4()    未知
     user32.dll!_MessageBoxWorker@4()    未知
     user32.dll!_MessageBoxTimeoutW@24()    未知
     user32.dll!_MessageBoxTimeoutA@24()    未知
     user32.dll!_MessageBoxExA@20()    未知
     user32.dll!_MessageBoxA@16()    未知
     msvcrt.dll!___crtMessageBoxA()    未知
     msvcrt.dll!__NMSG_WRITE()    未知
     msvcrt.dll!_abort()    未知
     node.dll!SkBitmap::allocPixels(const SkImageInfo & info={...}) 行 256    C++
     node.dll!blink::BitmapPatternBase::createShader() 行 39    C++
     node.dll!blink::StaticBitmapPattern::createShader() 行 44    C++
     node.dll!blink::Pattern::shader() 行 70    C++
     node.dll!blink::CanvasRenderingContext2DState::updateFillStyle() 行 247    C++
     node.dll!blink::CanvasRenderingContext2DState::getPaint(blink::CanvasRenderingContext2DState::PaintType paintType=FillPaintType, blink::ShadowMode shadowMode=DrawShadowAndForeground, blink::CanvasRenderingContext2DState::ImageType imageType=NoImage) 行 491    C++
     node.dll!blink::CanvasRenderingContext2D::draw<void <lambda>(const SkPaint *),<lambda_d5fff6c9ce433e22c6a60fd602cbb3ff> >(const blink::CanvasRenderingContext2D::drawPathInternal::__l7::void <lambda>(const SkPaint *) & drawFunc=void <lambda>(const SkPaint * paint){...}, const blink::CanvasRenderingContext2D::drawPathInternal::__l7::<lambda_d5fff6c9ce433e22c6a60fd602cbb3ff> & drawCoversClipBounds={...}, const SkRect & bounds={...}, blink::CanvasRenderingContext2DState::PaintType paintType=FillPaintType, blink::CanvasRenderingContext2DState::ImageType imageType=NoImage) 行 940    C++
     node.dll!blink::CanvasRenderingContext2D::drawPathInternal(const blink::Path & path={...}, blink::CanvasRenderingContext2DState::PaintType paintType=FillPaintType, SkPath::FillType fillType=kWinding_FillType) 行 971    C++
>    node.dll!blink::CanvasRenderingContext2D::fill(const WTF::String & windingRuleString={...}) 行 1004    C++
     node.dll!blink::CanvasRenderingContext2DV8Internal::fill1Method(const v8::FunctionCallbackInfo<v8::Value> & info={...}) 行 1247    C++
     node.dll!blink::CanvasRenderingContext2DV8Internal::fillMethod(const v8::FunctionCallbackInfo<v8::Value> & info={...}) 行 1288    C++
     node.dll!v8::internal::FunctionCallbackArguments::Call(void (const v8::FunctionCallbackInfo<v8::Value> &) * f=0x0f94ab2d) 行 20    C++
     node.dll!v8::internal::`anonymous namespace'::HandleApiCallHelper<0>(v8::internal::Isolate * isolate=0x0069b7e0, v8::internal::Handle<v8::internal::HeapObject> function={...}, v8::internal::Handle<v8::internal::HeapObject> new_target={...}, v8::internal::Handle<v8::internal::FunctionTemplateInfo> fun_data={...}, v8::internal::Handle<v8::internal::Object> receiver={...}, v8::internal::BuiltinArguments args={...}) 行 108    C++
     node.dll!v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments args={...}, v8::internal::Isolate * isolate=0x0069b7e0) 行 135    C++
     node.dll!v8::internal::Builtin_HandleApiCall(int args_length=4, v8::internal::Object * * args_object=0x003adae4, v8::internal::Isolate * isolate=0x0069b7e0) 行 123    C++
     1140607e()    未知
     [下面的框架可能不正确和/或缺失]    
     0919f9b0()    未知
     0919e4ca()    未知
     091a7143()    未知
     0bbf5191()    未知
     0bbf0a1f()    未知
     0bbf0912()    未知
     11406cd6()    未知
     1140851e()    未知
     11465918()    未知
     node.dll!v8::internal::`anonymous namespace'::Invoke(v8::internal::Isolate * isolate=0x003adae4, bool is_construct=false, v8::internal::Handle<v8::internal::Object> target={...}, v8::internal::Handle<v8::internal::Object> receiver={...}, int argc=1, v8::internal::Handle<v8::internal::Object> * args=0x003adedc, v8::internal::Handle<v8::internal::Object> new_target={...}) 行 139    C++
     node.dll!v8::internal::Execution::Call(v8::internal::Isolate * isolate=0x0069b7e0, v8::internal::Handle<v8::internal::Object> callable={...}, v8::internal::Handle<v8::internal::Object> receiver={...}, int argc=1, v8::internal::Handle<v8::internal::Object> * argv=0x003adedc) 行 176    C++
     node.dll!v8::Function::Call(v8::Local<v8::Context> context={...}, v8::Local<v8::Value> recv={...}, int argc=1, v8::Local<v8::Value> * argv=0x003adedc) 行 5019    C++
     node.dll!blink::V8ScriptRunner::callFunction(v8::Local<v8::Function> function={...}, blink::ExecutionContext * context=0x49526910, v8::Local<v8::Value> receiver={...}, int argc=1, v8::Local<v8::Value> * args=0x003adedc, v8::Isolate * isolate=0x0069b7e0) 行 444    C++
     node.dll!blink::ScriptController::callFunction(blink::ExecutionContext * context=0x49526910, v8::Local<v8::Function> function={...}, v8::Local<v8::Value> receiver={...}, int argc=1, v8::Local<v8::Value> * info=0x003adedc, v8::Isolate * isolate=0x0069b7e0) 行 156    C++
     node.dll!blink::V8FrameRequestCallback::handleEvent(double highResTime=8.1657148341825875e-307) 行 53    C++
     node.dll!blink::FrameRequestCallbackCollection::executeCallbacks(double highResNowMs=5117.7363395690918, double highResNowMsLegacy=1531918478967.8828) 行 69    C++
     node.dll!blink::ScriptedAnimationController::executeCallbacks(double monotonicTimeNow=27.981881618499756) 行 141    C++
     node.dll!blink::ScriptedAnimationController::serviceScriptedAnimations(double monotonicTimeNow=27.981881618499756) 行 173    C++
     node.dll!blink::Document::serviceScriptedAnimations(double monotonicAnimationStartTime=27.981881618499756) 行 5265    C++
     node.dll!blink::PageAnimator::serviceScriptedAnimations(double monotonicAnimationStartTime=27.981881618499756) 行 67    C++
     node.dll!blink::PageWidgetDelegate::animate(blink::Page & page={...}, double monotonicFrameBeginTime=27.981881618499756, blink::LocalFrame & root={...}) 行 61    C++
     node.dll!blink::WebViewImpl::beginFrame(const blink::WebBeginFrameArgs & frameTime={...}) 行 1889    C++
     node.dll!content::AutoRecordActions::leave() 行 369    C++
     node.dll!content::AutoRecordActions::~AutoRecordActions() 行 348    C++
     node.dll!content::WebPageImpl::executeMainFrame() 行 774    C++
     node.dll!content::WebPageImpl::beginMainFrame() 行 739    C++
     node.dll!content::WebPageImpl::fireTimerEvent() 行 782    C++
     node.dll!wke::CWebView::repaintIfNeeded() 行 504    C++
     node.dll!wke::CWebWindow::_windowProc(HWND__ * hwnd=0x005c11b8, unsigned int message=275, unsigned int wParam=35800720, long lParam=0) 行 225    C++
     node.dll!wke::CWebWindow::_staticWindowProc(HWND__ * hwnd=0x005c11b8, unsigned int message=275, unsigned int wParam=35800720, long lParam=0) 行 187    C++
     user32.dll!_InternalCallWinProc@20()    未知
     user32.dll!_UserCallWinProcCheckWow@32()    未知
     user32.dll!_DispatchMessageWorker@8()    未知
     user32.dll!_DispatchMessageW@4()    未知
     wkexe.exe!RunMessageLoop(Application * app=0x003ae338) 行 678    C++
     wkexe.exe!RunApplication(Application * app=0x003ae338) 行 762    C++
     wkexe.exe!wWinMain(HINSTANCE__ * hInstance=0x00070000, HINSTANCE__ * hPrevInstance=0x00000000, wchar_t * lpCmdLine=0x00472b38, int nCmdShow=10) 行 107    C++
     wkexe.exe!__scrt_common_main_seh() 行 264    C++
     kernel32.dll!@BaseThreadInitThunk@12()    未知
     ntdll.dll!___RtlUserThreadStart@8()    未知
     ntdll.dll!__RtlUserThreadStart@8()    未知
 

猜你喜欢

转载自blog.csdn.net/weolar/article/details/81105633