aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/app/src/main/java/com/wireguard/config/Config.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/com/wireguard/config/Config.java')
-rw-r--r--app/src/main/java/com/wireguard/config/Config.java21
1 files changed, 15 insertions, 6 deletions
diff --git a/app/src/main/java/com/wireguard/config/Config.java b/app/src/main/java/com/wireguard/config/Config.java
index c7fdcc87..8f61dbdd 100644
--- a/app/src/main/java/com/wireguard/config/Config.java
+++ b/app/src/main/java/com/wireguard/config/Config.java
@@ -61,12 +61,21 @@ public class Config extends BaseObservable
@Override
public void copyFrom(final Config source) {
- iface.copyFrom(source.iface);
- isEnabled = source.isEnabled;
- name = source.name;
- peers.clear();
- for (final Peer peer : source.peers)
- addPeer(peer);
+ if (source != null) {
+ iface.copyFrom(source.iface);
+ isEnabled = source.isEnabled;
+ isPrimary = source.isPrimary;
+ name = source.name;
+ peers.clear();
+ for (final Peer peer : source.peers)
+ addPeer(peer);
+ } else {
+ iface.copyFrom(null);
+ isEnabled = false;
+ isPrimary = false;
+ name = null;
+ peers.clear();
+ }
}
public Interface getInterface() {