summaryrefslogtreecommitdiff
path: root/plugins/New_GPG/src/ui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/New_GPG/src/ui.cpp')
-rwxr-xr-xplugins/New_GPG/src/ui.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/plugins/New_GPG/src/ui.cpp b/plugins/New_GPG/src/ui.cpp
index c3147444ba..04c308410e 100755
--- a/plugins/New_GPG/src/ui.cpp
+++ b/plugins/New_GPG/src/ui.cpp
@@ -278,19 +278,16 @@ void CDlgFirstRun::onClick_EXPORT_PRIVATE(CCtrlButton*)
int i = list_KEY_LIST.GetSelectionMark();
if (i == -1)
return;
- wchar_t *p = GetFilePath(L"Choose file to export key", L"*", L"Any file", true);
- if (!p || !p[0]) {
- delete[] p;
- //TODO: handle error
+
+ ptrW p(GetFilePath(L"Choose file to export key", L"*", L"Any file", true));
+ if (!p || !p[0])
return;
- }
- char *path = mir_u2a(p);
- delete[] p;
+
std::ofstream file;
- file.open(path, std::ios::trunc | std::ios::out);
- mir_free(path);
+ file.open(p, std::ios::trunc | std::ios::out);
if (!file.is_open())
return; //TODO: handle error
+
list_KEY_LIST.GetItemText(i, 0, fp, _countof(fp));
string out;
DWORD code;
@@ -310,7 +307,7 @@ void CDlgFirstRun::onClick_EXPORT_PRIVATE(CCtrlButton*)
if (result == pxNotFound)
return;
boost::algorithm::erase_all(out, "\r");
- file << out;
+ file << out.c_str();
if (file.is_open())
file.close();
}