Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 03:15:52 <shadowm> loonycyborg: I've got a weird issue here and I'm too lazy to file a bug at the moment. I get the following when attempting to connect to an add-ons server with a valid hostname but no listening campaignd on it:
- 03:16:15 <shadowm> 20130920 03:16:05 error network: network_asio::error thrown during transaction with add-on server; "Broken pipe"
- 03:16:15 <shadowm> 20130920 03:16:05 error general: Remote host disconnected.
- 03:17:39 <shadowm> loonycyborg: What isn't obvious from the output is that the game quits because the network_asio::error exception (it's a subclass of game::error) is somehow thrown again after the handler in src/addon/manager_ui.cpp line 979 is run/while it is running, so it is caught by main()'s game::error handler.
- 03:18:15 <shadowm> The game appears to quit while executing the gui2::show_error_message() function call.
- 03:19:01 <shadowm> A backtrace shows that somehow there's an implementation detail of gui2::tnetwork_transmission (the network progress dialog) involved at that point: http://pastebin.com/R4phP62p
- 03:20:27 <shadowm> Given that my gui2::tnetwork_transmission object (as a field of the addons_client object declared in src/addon/manager_ui.cpp) is supposed to have been destroyed at this point, I suspect that gui2::tnetwork_transmission or one of its object isn't performing some required clean-up step in its destructor.
- 03:21:04 <shadowm> *declared in src/addon/manager_ui.cpp line 937 (in <anonymous>::addons_manager_ui())
- 03:22:23 <shadowm> addons_client's destructor destroys its associated gui2::tnetwork_transmission first, then the network_asio::connection object.
- 03:23:33 <shadowm> Not sure if I'm supposed to do something myself before their destructors get invoked.
- 03:24:11 <shadowm> This problem only affects 1.11.x (all versions), and only when trying to connect to a valid hostname with no listener.
- 03:26:07 <shadowm> Then again, the 1.10 version doesn't do anything special.
- 03:26:51 <shadowm> Well, it doesn't use new/delete to manage the network_asio::connection and gui2::tnetwork_transmission objects, and that's it.
Advertisement
Add Comment
Please, Sign In to add comment