Steps to reproduce:
- Run Bitcoin-Qt with limited NET_IPV4. (for ex. with the "-onlynet=tor" option).
- Go to Options-Network.
- Check the "Connect through SOCKS proxy" checkbox and press Apply.
- The checkbox becomes unchecked, but the option "fUseProxy" in the qt-settings file (~/.config/Bitcoin/Bitcoin-Qt.conf) now has value "true".
- Restart Bitcoin-Qt without any limitations (without options).
- Go to Options-Network.
- The checkbox is checked (because "fUseProxy=true").
- Try to uncheck it, but it becomes checked again after pressing Apply. There is no way to uncheck it now.
The same behavior appears under Windows too.
I guess the problem caused by this line https://github.com/bitcoin/bitcoin/blob/0.8.3/src/qt/optionsmodel.cpp#L168