[Matroska-devel] Haali Media Splitter crashing on Windows 7

Colleen Williams (Smart Marketing & Events) v-collw at microsoft.com
Fri Aug 7 00:17:21 CEST 2009

Hello, I am a Program Manager with the Windows Application Experience team at Microsoft.  One of our commitments is to provide the best possible end user experience for each new version of the Microsoft Windows operating system.  Our main goal is to provide a positive user experience so we gather crash data, hangs, & bluescreens via Windows Error Reporting (WER). WER provides us with an accurate portrayal of how an application or driver is performing in the wild and in doing so we are able to identify and often address reliability issues.

I'm contacting you because we've identified a reliability issue with Splitter.ax. Unfortunately due to limited information we receive when a crash occurs, we can't reproduce the crash exactly as the user encountered. Splitter.ax is crashing around 1500 times per day on Windows 7. From the cabs, it looks like release on an IPin during destruction of CDShowUtil in CVMGAVIHelper::ReOpen/CVMGRenderHelper:Render causes crash in splitter.ax code.

Stack Trace:

0:003> k100
ChildEBP RetAddr
0054efec 76f27bbc ntdll!KiFastSystemCallRet
0054eff0 75256878 ntdll!ZwWaitForMultipleObjects+0xc
0054f08c 7570f08a KERNELBASE!WaitForMultipleObjectsEx+0x100
0054f0d4 7570f20a kernel32!WaitForMultipleObjectsExImplementation+0xe0
0054f0f0 75722e6d kernel32!WaitForMultipleObjects+0x18
0054f15c 75722f0a kernel32!WerpReportFaultInternal+0x186
0054f170 75722c98 kernel32!WerpReportFault+0x70
0054f180 75722c17 kernel32!BasepReportFault+0x20
0054f20c 76f577fe kernel32!UnhandledExceptionFilter+0x1af
0054f214 76efef84 ntdll!__RtlUserThreadStart+0x62
0054f228 76efee17 ntdll!_EH4_CallFilterFunc+0x12
0054f250 76f28349 ntdll!_except_handler4+0x8e
0054f274 76f2831b ntdll!ExecuteHandler2+0x26
0054f324 76f281a7 ntdll!ExecuteHandler+0x24
0054f324 00000000 ntdll!KiUserExceptionDispatcher+0xf
WARNING: Frame IP not in any known module. Following frames may be wrong.
0054f638 07b71d74 0x0
0054f658 695fa8e9 splitter+0x21d74
0054f6d4 695fa59d wlxclip!CVMGAVIHelper::ReOpen+0x342
0054f6e4 695ef42d wlxclip!CVMGAVIHelper::Open+0x37
0054f708 695f132f wlxclip!CVMGMediaSourceFile::InitFileHelper+0xdf
0054f740 6be4240e wlxclip!CVMGMediaSourceFile::get_Dimensions+0x2b
0054f794 6be342c9 WLXPhotoViewer!GetVideoDimensionsFromVmgFileProperties+0x50
0054f7b4 6be1fa06 WLXPhotoViewer!WMPVideoPlayer::LoadVideoFile+0x2b
0054f7cc 6be2014b WLXPhotoViewer!VideoMediaHandlerCanvas::ActivateCurrentVideoPlayerWithFile+0x67
0054f820 6be20292 WLXPhotoViewer!VideoMediaHandlerCanvas::LoadVideoFileInternal+0xee
0054f834 6be0e7a5 WLXPhotoViewer!VideoMediaHandlerCanvas::LoadVideoFile+0x17
0054f87c 6be0e9fd WLXPhotoViewer!VideoMediaHandler::DoLoadDocument+0x98
0054f8b0 6be08e31 WLXPhotoViewer!VideoMediaHandler::Activate+0x4c
0054f8e8 6be08a63 WLXPhotoViewer!TweakerDisplay::SetMediaHandler+0x7e
0054f93c 6be08ee4 WLXPhotoViewer!TweakerDisplay::SetCurrentPhodeoInternal+0x144
0054f984 6be08880 WLXPhotoViewer!TweakerDisplay::DisplayPhodeo+0x76
0054f9bc 6bdf6719 WLXPhotoViewer!TweakerDisplay::NavigateNext+0x55
0054f9f4 6bdfa904 WLXPhotoViewer!TweakerClient::DoCommand+0x64
0054fa34 6be5dc7b WLXPhotoViewer!ShellEasel::DoCommand+0x33
0054fa70 6be5d478 WLXPhotoViewer!ModularWindow::LockUpPane::ProcessCommand+0xee
0054faa4 6bdfc65f WLXPhotoViewer!ModularWindow::LockUpPane::OnCommand+0x48
0054fab0 6be0141c WLXPhotoViewer!ModularWindow::LockUpPane::ProcessWindowMessage+0x1f
0054fb00 76ccc6c2 WLXPhotoViewer!ATL::CWindowImplBaseT<ATL::CWindow,ATL::CWinTraits<1442840576,0> >::WindowProc+0x44
0054fb2c 76ccc79a user32!InternalCallWinProc+0x23
0054fba4 76cc502c user32!UserCallWinProcCheckWow+0x14b
0054fc00 76cc5089 user32!DispatchClientMessage+0xda
0054fc28 76f2817e user32!__fnDWORD+0x24
0054fc54 76ce63d3 ntdll!KiUserCallbackDispatcher+0x2e
0054fc58 76ce63bd user32!NtUserTranslateAccelerator+0xc
0054fc6c 6be5d4d9 user32!TranslateAcceleratorW+0x34
0054fc88 6be027d5 WLXPhotoViewer!ModularWindow::LockUpPane::PreTranslateMessage+0x43
0054fc98 6bdfe5da WLXPhotoViewer!ModularWindow::PaneHost::PreTranslateMessage+0x18
0054fce8 6be02d31 WLXPhotoViewer!ModularWindow::FrameImpl<LightweightFrameWindow,ATL::CWindow,ATL::CWinTraits<47120384,256> >::PreTranslateMessage+0x1e6
0054fd38 6bdfd269 WLXPhotoViewer!LightweightFrameWindow::ProcessCommands+0xb1
0054fd90 6bdfac57 WLXPhotoViewer!ShellEasel::Run+0x86
0054fe04 6bdfb102 WLXPhotoViewer!ShellPhotoViewerUtilPrivate::RunPhotoViewerModal+0x136
0054fe50 6bdfb164 WLXPhotoViewer!ShellPhotoViewerUtil::ShellViewerThread::Run+0x8a
0054fe68 757110dc WLXPhotoViewer!ShellPhotoViewerUtil::ShellViewerThread::ThreadProc+0x25
0054fe74 76f41e9e kernel32!BaseThreadInitThunk+0xe
0054feb4 76f41e71 ntdll!__RtlUserThreadStart+0x70
0054fecc 00000000 ntdll!_RtlUserThreadStart+0x1b

Exception Record:
0:006> .exr -1
ExceptionAddress: 00000000
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 00000008
   Parameter[1]: 00000000
Attempt to execute non-executable address 00000000

Trying to dissasamble  from this address in order to see how that null pointer was called
0:003> u splitter+0x21d74    <-- Not in dump
07b71d74 ??              ???
                        ^ Memory access error in 'u splitter+0x21d74'

0:003> lmvm splitter
start    end        module name
07b50000 07bd8000   splitter T (no symbols)
    Loaded symbol image file: splitter.ax
    Image path: C:\Program Files\K-Lite Codec Pack\Filters\Haali\splitter.ax
    Image name: splitter.ax
    Timestamp:        Sat Jan 10 14:17:15 2009 (49691E6B)
    CheckSum:         00090FA7
    ImageSize:        00088000
    File version:
    Product version:
    File flags:       0 (Mask 17)
    File OS:          4 Unknown Win32
    File type:        2.0 Dll
    File date:        00000000.00000000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4

The symptoms and applications in these crashes vary, so it's possible we are looking at multiple issues. Microsoft does not have debugging symbols for your product. This makes it more difficult for our automation to correctly assign which module is most likely to be the root cause of the failure. Occasionally, our automation will attribute blame incorrectly. If this happens, please send us an example error report with your analysis, and tell us how to correctly identify the failing module.

You may have a newer version of splitter.ax available and we can post a response to users who are experiencing this crash directing them to your website for more information. As stated above, our end goal is to have a positive end user experience with Windows & your software and we need your assistance to accomplish this goal.

Please let me know if I can provide any further information to assist.

Colleen Williams
PM for WER
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.matroska.org/pipermail/matroska-devel/attachments/20090806/8c2970e2/attachment.html>

More information about the Matroska-devel mailing list