/[winpt]/trunk/Src/wptKeyManager.cpp
ViewVC logotype

Diff of /trunk/Src/wptKeyManager.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 254 by twoaday, Sat Jul 29 10:48:22 2006 UTC revision 255 by twoaday, Tue Aug 1 16:37:23 2006 UTC
# Line 843  km_send_to_mail_recipient (listview_ctrl Line 843  km_send_to_mail_recipient (listview_ctrl
843      gpgme_error_t rc;      gpgme_error_t rc;
844      GPGME *ctx;      GPGME *ctx;
845      struct keycache_s *c;      struct keycache_s *c;
846      char *fname;      char *fname, *uid;
847      int pos;      int pos, n;
     int n;  
848    
849      if (listview_count_items (lv, 1) > 1) {      if (listview_count_items (lv, 1) > 1) {
850          msg_box (dlg, _("Please only select one key."),          msg_box (dlg, _("Please only select one key."),
# Line 858  km_send_to_mail_recipient (listview_ctrl Line 857  km_send_to_mail_recipient (listview_ctrl
857          return WPTERR_GENERAL;          return WPTERR_GENERAL;
858      }      }
859      key = km_get_key_ptr (lv, pos, &c);      key = km_get_key_ptr (lv, pos, &c);
860        uid = m_strdup (c->uids->name);
861      n = strlen (c->uids->name)+1 + MAX_PATH + 5;      secure_filename (uid, strlen (uid));
862        n = strlen (uid) + 1 + MAX_PATH + 5;
863      fname = new char[n+1];      fname = new char[n+1];
864      get_temp_name (fname, n-5, c->uids->name);      get_temp_name (fname, n-5-strlen (uid)-1, uid);
     secure_filename (fname, strlen (fname));  
865      strcat (fname, ".asc");      strcat (fname, ".asc");
866      ctx = new GPGME ();      ctx = new GPGME ();
867      ctx->setArmor (true);      ctx->setArmor (true);
# Line 874  km_send_to_mail_recipient (listview_ctrl Line 873  km_send_to_mail_recipient (listview_ctrl
873    
874      delete ctx;      delete ctx;
875      free_if_alloc (fname);      free_if_alloc (fname);
876        free_if_alloc (uid);
877      return rc;      return rc;
878  }  }
879    
880    
881  /* Refresh the selected key in the listview @lv at position @pos.  /* Refresh the selected key in the listview @lv at position @pos.
882     Legal flags are 0 = single key. */     Legal flags are 0 = single key. */
883  static void  static int
884  km_refresh_one_key (listview_ctrl_t lv, HWND dlg, int pos, int flags)  km_refresh_one_key (listview_ctrl_t lv, HWND dlg, int pos, int flags)
885  {  {
886      winpt_key_s pk;      winpt_key_s pk;
# Line 913  km_refresh_one_key (listview_ctrl_t lv, Line 913  km_refresh_one_key (listview_ctrl_t lv,
913          if (!flags && !err)          if (!flags && !err)
914              keycache_update (0, keyid);              keycache_update (0, keyid);
915      }      }
916        return err;
917  }  }
918    
919    
# Line 920  km_refresh_one_key (listview_ctrl_t lv, Line 921  km_refresh_one_key (listview_ctrl_t lv,
921  int  int
922  km_refresh_from_keyserver (listview_ctrl_t lv, HWND dlg)  km_refresh_from_keyserver (listview_ctrl_t lv, HWND dlg)
923  {  {
924      int cnt, id, i;          int cnt, id, i;
925        int err = 0;
926    
927      cnt = listview_count_items (lv, 0);      cnt = listview_count_items (lv, 0);
928      if (listview_count_items (lv, 1) == cnt) {      if (listview_count_items (lv, 1) == cnt) {
# Line 935  km_refresh_from_keyserver (listview_ctrl Line 937  km_refresh_from_keyserver (listview_ctrl
937          }          }
938      }      }
939      if (listview_count_items (lv, 1) == 1)      if (listview_count_items (lv, 1) == 1)
940          km_refresh_one_key (lv, dlg, listview_get_curr_pos (lv), 0);          err = km_refresh_one_key (lv, dlg, listview_get_curr_pos (lv), 0);
941      else {      else {
942          for (i=0; i < cnt; i++) {          for (i=0; i < cnt; i++) {
943              if (listview_get_item_state (lv, i))              if (listview_get_item_state (lv, i))
944                  km_refresh_one_key (lv, dlg, i, KM_KS_REFRESH);                  km_refresh_one_key (lv, dlg, i, KM_KS_REFRESH);
945          }          }
946      }      }
947      return 0;      return err;
948  }  }
949    
950    

Legend:
Removed from v.254  
changed lines
  Added in v.255

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26