aboutsummaryrefslogtreecommitdiffstats
path: root/g10/keyedit.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--g10/keyedit.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/g10/keyedit.c b/g10/keyedit.c
index ce31bdc8c..738c9a658 100644
--- a/g10/keyedit.c
+++ b/g10/keyedit.c
@@ -3711,9 +3711,6 @@ menu_backsign(KBNODE pub_keyblock,KBNODE sec_keyblock)
break;
}
- if(!sig_sk)
- continue;
-
/* Now we can get to work. We have a main key and secret part,
a signing subkey with signature and secret part with
signature. */
@@ -3744,13 +3741,16 @@ menu_backsign(KBNODE pub_keyblock,KBNODE sec_keyblock)
xfree(sig_pk->pkt);
sig_pk->pkt=newpkt;
- /* Put the new sig into place on the seckey */
- newpkt=xmalloc_clear(sizeof(*newpkt));
- newpkt->pkttype=PKT_SIGNATURE;
- newpkt->pkt.signature=copy_signature(NULL,newsig);
- free_packet(sig_sk->pkt);
- xfree(sig_sk->pkt);
- sig_sk->pkt=newpkt;
+ if(sig_sk)
+ {
+ /* Put the new sig into place on the seckey */
+ newpkt=xmalloc_clear(sizeof(*newpkt));
+ newpkt->pkttype=PKT_SIGNATURE;
+ newpkt->pkt.signature=copy_signature(NULL,newsig);
+ free_packet(sig_sk->pkt);
+ xfree(sig_sk->pkt);
+ sig_sk->pkt=newpkt;
+ }
modified=1;
}