Wez Furlong's patch to add xterm mouse reporting and proper mouse
[u/mdw/putty] / puttygen.c
index 19245f8..6f5d816 100644 (file)
@@ -93,7 +93,7 @@ struct PassphraseProcStruct {
  */
 static int CALLBACK PassphraseProc(HWND hwnd, UINT msg,
                                    WPARAM wParam, LPARAM lParam) {
-    static char *passphrase;
+    static char *passphrase = NULL;
     struct PassphraseProcStruct *p;
 
     switch (msg) {
@@ -121,6 +121,7 @@ static int CALLBACK PassphraseProc(HWND hwnd, UINT msg,
         if (p->comment)
             SetDlgItemText(hwnd, 101, p->comment);
         *passphrase = 0;
+        SetDlgItemText(hwnd, 102, passphrase);
         return 0;
       case WM_COMMAND:
        switch (LOWORD(wParam)) {
@@ -134,7 +135,7 @@ static int CALLBACK PassphraseProc(HWND hwnd, UINT msg,
            EndDialog (hwnd, 0);
            return 0;
           case 102:                    /* edit box */
-           if (HIWORD(wParam) == EN_CHANGE) {
+           if ((HIWORD(wParam) == EN_CHANGE) && passphrase) {
                 GetDlgItemText (hwnd, 102, passphrase, PASSPHRASE_MAXLEN-1);
                 passphrase[PASSPHRASE_MAXLEN-1] = '\0';
             }
@@ -314,7 +315,7 @@ static void setupbigedit1(HWND hwnd, int id, struct RSAKey *key) {
     buffer = smalloc(strlen(dec1)+strlen(dec2)+
                      strlen(key->comment)+30);
     sprintf(buffer, "%d %s %s %s",
-            ssh1_bignum_bitcount(key->modulus),
+            bignum_bitcount(key->modulus),
             dec1, dec2, key->comment);
     SetDlgItemText(hwnd, id, buffer);
     sfree(dec1);