Open bobdog6861 opened 6 years ago
Try this patch:
Author: S-trace <S-trace@list.ru>
Date: Mon Nov 20 16:19:56 2017 +0300
[CHANNELS] Update written value before CollectAverage call
Fixes possible SIGSEGV crashes
diff --git a/src/channels.cpp b/src/channels.cpp
index 660800e..edc680a 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -460,9 +460,9 @@ bool RawMediaStream::WriteData(const BYTE *data,
cout << "silence write failed!" << endl;
return false;
}
+ written = m_channel->GetLastWriteCount();
CollectAverage(silence, written);
}
- written = m_channel->GetLastWriteCount();
// cout << "wrote " << written << endl;
return true;
//return OpalRawMediaStream::WriteData(data, length, written);
I was facing the same issue. This solved it for me
This patch solved it for me, too.
Same here. Thx.
valgrind says:
CreateMediaStream TestChannel[ Call[C02e1f8fb1]-EP[L22cf95bf2] - 0x3c0550f0 ]
assert.cxx(112) PWLib Assertion fail: Attempt to do simultaneous reads from multiple threads: os_handle=24, thread ID=0x1f385700, file ptlib/unix/channel.cxx, line 110OnOpenMediaStream
recording media from local
TestPhone::Main: calling "sip:403#######@192.168.0.12" for 10 Assertion fail: Attempt to do simultaneous reads from multiple threads: os_handle=24, thread ID=0x1f385700, file ptlib/unix/channel.cxx, line 110
I have the latest version of ptlib_dev, any ideas ?