MixedRealityCompanionKit icon indicating copy to clipboard operation
MixedRealityCompanionKit copied to clipboard

RealtimeStreaming's Windows Desktop server crashes when I try to stop streamming (winrt::hresult_error)

Open danilogr opened this issue 5 years ago • 2 comments

Hello,

Whenever I try to stop streaming a video from DesktopServerApp the application crashes with a winrt::hresult_error exception.

desktop_server_crash1

Looking through the stack trace, this is the call responsible for the crash: image

It crashes on a co_await in line 86 (within method winrt::fire_and_forget Connection::RunSocketLoop() in Connection.cpp:73)

     84        // Read in the batch of data (header & payload)
     85        Buffer headerBuffer(sizeof(PayloadHeader));
---> 86        co_await inputStream.ReadAsync(headerBuffer, headerBuffer.Capacity(), InputStreamOptions::None);
     87
     88        HRESULT hr = OnHeaderReceived(headerBuffer);

danilogr avatar Jun 24 '19 15:06 danilogr

This seems to be an easy-to-handle problem as the exception is being thrown due to the socket closing.

Exception thrown at 0x00007FF88D8AA839 (KernelBase.dll) in DesktopServerApp.exe: WinRT originate error - 0x800703E3 : 'The I/O operation has been aborted because of either a thread exit or an application request.'.
Exception thrown at 0x00007FF88D8AA839 in DesktopServerApp.exe: Microsoft C++ exception: winrt::hresult_error at memory location 0x000000B89E3FF250

danilogr avatar Jun 24 '19 15:06 danilogr

Rookie mistake? This doesn't seem to happen when I don't debug

danilogr avatar Jun 24 '19 16:06 danilogr