Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell/ev-jobs.c
diff options
context:
space:
mode:
authorNickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-06-09 05:24:35 (GMT)
committer Nickolay V. Shmyrev <nshmyrev@src.gnome.org>2006-06-09 05:24:35 (GMT)
commit79cb06835073622ffeaa082eac48b70c8d1ee7a7 (patch)
tree0d34147c32a4d235b769793f7bb81c1869ce7b12 /shell/ev-jobs.c
parent6b82415e9ffe02cbcf898a75f3b30dbdde51ab06 (diff)
Fixes bug #344160: if the xfer job doesn't complete because a password is
* shell/ev-jobs.c: (ev_job_xfer_run): * shell/ev-window.c: (password_dialog_response), (ev_window_popup_password_dialog), (ev_window_xfer_job_cb), (ev_window_dispose): Fixes bug #344160: if the xfer job doesn't complete because a password is required, reload the existing instance instead of creating a new one.
Diffstat (limited to 'shell/ev-jobs.c')
-rw-r--r--shell/ev-jobs.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/shell/ev-jobs.c b/shell/ev-jobs.c
index e9f29eb..c88c011 100644
--- a/shell/ev-jobs.c
+++ b/shell/ev-jobs.c
@@ -434,6 +434,17 @@ ev_job_xfer_run (EvJobXfer *job)
g_error_free (job->error);
job->error = NULL;
}
+
+ /* This job may already have a document even if the job didn't complete
+ because, e.g., a password is required - if so, just reload rather than
+ creating a new instance */
+ if (EV_JOB (job)->document) {
+ ev_document_load (EV_JOB (job)->document,
+ job->local_uri ? job->local_uri : job->uri,
+ &job->error);
+ EV_JOB (job)->finished = TRUE;
+ return;
+ }
source_uri = gnome_vfs_uri_new (job->uri);
if (!gnome_vfs_uri_is_local (source_uri) && !job->local_uri) {