Open FrankvdStam opened 5 years ago
gdb gives me this:
Program received signal SIGSEGV, Segmentation fault.
0x0004027c in asio::detail::thread_info_base::allocate<asio::detail::thread_info_base::default_tag> (this_thread=0x1, size=92)
at libraries/asio/include/asio/detail/thread_info_base.hpp:71
71 if (this_thread && this_thread->reusable_memory_[Purpose::mem_index])
I have no idea what this means :)
Maybe I should ask over at the asio repo?
Since it was in a thread file or threading related construction, I tried constructing the websocket in the main function instead of outside of it. That does actually work. Problem solved I guess! I'll leave this issue open so someone can decide if any action should be taken.
Edit: putting it on the heap also works, that way I can define the pointer outside main, use it in methods, only construct it in main. I'm probably making a common mistake here, I'm not that experienced in C++.
Full code here: https://github.com/FrankvdStam/Tempy
For reference, this project is supposed to be a temperature monitor. It sends my pc's temperature over to the pi, the pi draw's a graph with opengl.
Reproduction: you need xorg-dev to run the program (opengl stuff) bash gmake2_premake5.lua make run the binary in the bin directory
I traced it to the start_accept call in websocket's constructor:
I'm building on windows and on the pi, it runs without issue on windows. You can try windows by running vs2019_premake5.bat and opening in visual studio.
NOTE: I build premake5 from source. Runing these commands will run the binaries I made. You might want to build your own premake? Maybe the makefiles in the git repo are fine so you don't have to? Untrustworthy sources yadayada.
What am I doing wrong? I looked for issues but did not find anything which seemed relevant for me.