summaryrefslogtreecommitdiff
path: root/src/uicmd.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/uicmd.cc')
-rw-r--r--src/uicmd.cc15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/uicmd.cc b/src/uicmd.cc
index 153d5fb4..f08c7e70 100644
--- a/src/uicmd.cc
+++ b/src/uicmd.cc
@@ -901,17 +901,10 @@ static int UIcmd_save_file_check(const char *name)
static void UIcmd_save(BrowserWindow *bw, const DilloUrl *url,
const char *title)
{
- const char *name;
- bool_t first_prompt = 1;
+ char *SuggestedName = UIcmd_make_save_filename(url);
+
while (1) {
- char *SuggestedName;
-
- SuggestedName =
- first_prompt
- ? UIcmd_make_save_filename(url)
- : dStrdup(name);
- first_prompt = 0;
- name = a_Dialog_save_file(title, NULL, SuggestedName);
+ const char *name = a_Dialog_save_file(title, NULL, SuggestedName);
dFree(SuggestedName);
if (name) {
@@ -932,6 +925,8 @@ static void UIcmd_save(BrowserWindow *bw, const DilloUrl *url,
} else {
return; /* no name, so Abort */
}
+
+ SuggestedName = dStrdup(name);
}
}