-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
openhantek crashing #5
Comments
Tried to reproduce without "success". Please describe the exact way to get the crash.
"Normal" works as follows:
|
I will show you video after few days. |
It is here oh_v_0-2019-05-05_07.41.00.zip |
And here you can see that Normal mode not working as expected: |
I reproduced all your steps with a 1st time run (no config file) as well as with a saved config. I was not able to see this crash, also not with all recent versions. Looks like the crash comes out of some OpenGL code. As your and my video HW as well as Qt version are different you're unfortunately on your own - sorry. |
May be I should change some build options? |
build option? - I don't know Here's the data flow:
Another shot in the dark: |
Disabling antialiasing not helped. Look at more good backtrace:
|
I found that it is one of Fedora build flags. I will continue to find which one. |
It is
And now I see really good Normal mode with freezing. But this assertion still can report about vector length problem in code. |
If apply this patch
crashing are stopped. But trace disappears instead of freeze when no trigger event.. So please rewrite this code as you more powerful in that. |
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
Added global -D_GLIBCXX_ASSERTIONS (as already used by Fedora) and #undef it only for 1 file. |
It is very ugly fix. You should correct code instead it. |
I know it's ugly, but it works reliably according to the data flow:
I will update and reuse the detailed data flow above also in a separate readme document. This was missing in the past and the maintainers had to deep-dive into the code structure that grew over years. |
Will it cause a memory leak or memory corruption? |
After applying this patch (or disable _GLIBCXX_ASSERTIONS at all) I have new crash in same file:
Steps to reproduce:
|
No, because the vector has a capacity of 3 and is not destroyed, only the element count is set to 0. The content is still there and will be displayed. The "digital phosphor" issue is a bug. It has low probability to meet the conditions above but it's not correct. I think I found a real clean solution for all issues above, but it will take some days to implement. |
Signed-off-by: Martin <Ho-Ro@users.noreply.github.com>
New clean fix available. |
Finally closed with v2.04 (0ffadc7). Avoids also artefacts when switching channels - extremely annoying when the traces are long time on screen due to using digital phosphor. |
This happen then I set Normal mode and move trigger threshold.
Also as I understand "normal" mode in oscilloscopes it should stop refresh data on the screen if trigger not crossed. It is bug too
And backtrace from gdb https://paste.fedoraproject.org/paste/L6k6zoKs9lqEUIZnhwhcdw
The text was updated successfully, but these errors were encountered: