I have no proxy setup on my local machine, so setting one will for sure not work and is intended to reproduce this.
Steps to reproduce:
- start Bitcoin-Qt (compiled from current master)
- enable proxy and use default settings
- exit
- restart Bitcoin-Qt
- exit
- crash
debug.log shows in the end: socket select error 10022 ERROR: GetMyExternalIP() : connection to 216.146.39.70:80 failed Bitcoin exited select() for connection failed: 10038 ERROR: GetMyExternalIP() : connection to 212.117.175.194:80 failed ThreadOpenConnections exited
So I guess it has to do with ThreadOpenConnections not cleanly exiting, perhaps because we don't detect or handle such connection problems. This needs a deep look by @sipa I think.
Btw. the proxy setting in the Qt GUI needs a re-start, right? It's not changed on the fly?