Dn-Programming-Core-Management / Dn-FamiTracker

modifications and improvements for 0CC-FamiTracker (based on j0CC-FamiTracker 0.6.3)
Other
378 stars 23 forks source link

wav export progress dialog does not appear on some projects #159

Open nyanpasu64 opened 2 years ago

nyanpasu64 commented 2 years ago
    win32u.dll!NtUserPeekMessage() Unknown
    user32.dll!_PeekMessage()   Unknown
    user32.dll!PeekMessageA()   Unknown
    Dn-FamiTracker.exe!CWnd::RunModalLoop(unsigned long dwFlags) Line 4686  C++
    Dn-FamiTracker.exe!CWnd::CreateRunDlgIndirect(const DLGTEMPLATE * lpDialogTemplate, CWnd * pParentWnd, HINSTANCE__ * hInst) Line 474    C++
    Dn-FamiTracker.exe!CDialog::DoModal() Line 633  C++
    Dn-FamiTracker.exe!CWavProgressDlg::BeginRender(ATL::CStringT<char,StrTraitMFC<char,ATL::ChTraitsCRT<char>>> & File, render_end_t LengthType, int LengthParam, int Track) Line 69   C++
    Dn-FamiTracker.exe!CCreateWaveDlg::OnBnClickedBegin() Line 156  C++
    [Inline Frame] Dn-FamiTracker.exe!_AfxDispatchCmdMsg(CCmdTarget * pfn, unsigned int nSig, int) Line 77  C++
    Dn-FamiTracker.exe!CCmdTarget::OnCmdMsg(unsigned int nID, int nCode, void * pExtra, AFX_CMDHANDLERINFO * pHandlerInfo) Line 372 C++
    Dn-FamiTracker.exe!CDialog::OnCmdMsg(unsigned int nID, int nCode, void * pExtra, AFX_CMDHANDLERINFO * pHandlerInfo) Line 85 C++
    Dn-FamiTracker.exe!CWnd::OnCommand(unsigned __int64 wParam, __int64 lParam) Line 2800   C++
    Dn-FamiTracker.exe!CWnd::OnWndMsg(unsigned int message, unsigned __int64 wParam, __int64 lParam, __int64 * pResult) Line 2113   C++
    Dn-FamiTracker.exe!CWnd::WindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2099    C++
    Dn-FamiTracker.exe!AfxCallWndProc(CWnd * pWnd, HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 265  C++
    Dn-FamiTracker.exe!AfxWndProc(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 417   C++
    user32.dll!UserCallWinProcCheckWow()    Unknown
    user32.dll!SendMessageWorker(struct tagWND *,unsigned int,unsigned __int64,__int64,int) Unknown
    user32.dll!SendMessageW()   Unknown
    comctl32.dll!Button_ReleaseCapture()    Unknown
    comctl32.dll!Button_WndProc()   Unknown
    user32.dll!UserCallWinProcCheckWow()    Unknown
    user32.dll!DispatchMessageWorker()  Unknown
    user32.dll!IsDialogMessageW()   Unknown
    user32.dll!IsDialogMessageA()  Unknown
    Dn-FamiTracker.exe!CWnd::IsDialogMessageA(tagMSG * lpMsg) Line 194  C++
    Dn-FamiTracker.exe!CDialog::PreTranslateMessage(tagMSG * pMsg) Line 80  C++
    Dn-FamiTracker.exe!CWnd::WalkPreTranslateTree(HWND__ * hWndStop, tagMSG * pMsg) Line 3379   C++
    Dn-FamiTracker.exe!AfxInternalPreTranslateMessage(tagMSG * pMsg) Line 233   C++
    Dn-FamiTracker.exe!CFamiTrackerApp::PreTranslateMessage(tagMSG * pMsg) Line 347 C++
    Dn-FamiTracker.exe!AfxInternalPumpMessage() Line 178    C++
    Dn-FamiTracker.exe!CWnd::RunModalLoop(unsigned long dwFlags) Line 4661  C++
    Dn-FamiTracker.exe!CWnd::CreateRunDlgIndirect(const DLGTEMPLATE * lpDialogTemplate, CWnd * pParentWnd, HINSTANCE__ * hInst) Line 474    C++
>   Dn-FamiTracker.exe!CDialog::DoModal() Line 633  C++
    Dn-FamiTracker.exe!CMainFrame::OnCreateWAV() Line 1568  C++
    [Inline Frame] Dn-FamiTracker.exe!_AfxDispatchCmdMsg(CCmdTarget * pfn, unsigned int nSig, int) Line 77  C++
    Dn-FamiTracker.exe!CCmdTarget::OnCmdMsg(unsigned int nID, int nCode, void * pExtra, AFX_CMDHANDLERINFO * pHandlerInfo) Line 372 C++
    Dn-FamiTracker.exe!CFrameWnd::OnCmdMsg(unsigned int nID, int nCode, void * pExtra, AFX_CMDHANDLERINFO * pHandlerInfo) Line 984  C++
    Dn-FamiTracker.exe!CWnd::OnCommand(unsigned __int64 wParam, __int64 lParam) Line 2800   C++
    Dn-FamiTracker.exe!CFrameWnd::OnCommand(unsigned __int64 wParam, __int64 lParam) Line 384   C++
    Dn-FamiTracker.exe!CWnd::OnWndMsg(unsigned int message, unsigned __int64 wParam, __int64 lParam, __int64 * pResult) Line 2113   C++
    Dn-FamiTracker.exe!CWnd::WindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 2099    C++
    Dn-FamiTracker.exe!AfxCallWndProc(CWnd * pWnd, HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 265  C++
    Dn-FamiTracker.exe!AfxWndProc(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 417   C++
    user32.dll!UserCallWinProcCheckWow()    Unknown
    user32.dll!DispatchMessageWorker()  Unknown
    Dn-FamiTracker.exe!AfxInternalPumpMessage() Line 183    C++
    Dn-FamiTracker.exe!CWinThread::Run() Line 629   C++
    Dn-FamiTracker.exe!AfxWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 61 C++
    [Inline Frame] Dn-FamiTracker.exe!invoke_main() Line 102    C++
    Dn-FamiTracker.exe!__scrt_common_main_seh() Line 288    C++
    kernel32.dll!BaseThreadInitThunk() Unknown
    ntdll.dll!RtlUserThreadStart() Unknown

stack CCreateWaveDlg -> void CCreateWaveDlg::OnBnClickedBegin() -> stack CWavProgressDlg -> CWavProgressDlg::BeginRender().

idk

nyanpasu64 commented 2 years ago

one parallel stack graph of audio thread in m_csDocumentLock, but audio thread is not deadlocked always.

i think the gui thread is hung on m_ReceiveThread calling PostMessage.

and gui audio thread sometimes crashes:

image