summaryrefslogtreecommitdiff
path: root/includes/job/UploadFromUrlJob.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/job/UploadFromUrlJob.php')
-rw-r--r--includes/job/UploadFromUrlJob.php16
1 files changed, 10 insertions, 6 deletions
diff --git a/includes/job/UploadFromUrlJob.php b/includes/job/UploadFromUrlJob.php
index 3f915245..26f6e4ba 100644
--- a/includes/job/UploadFromUrlJob.php
+++ b/includes/job/UploadFromUrlJob.php
@@ -61,24 +61,24 @@ class UploadFromUrlJob extends Job {
if ( !$this->params['ignoreWarnings'] ) {
$warnings = $this->upload->checkWarnings();
if ( $warnings ) {
- wfSetupSession( $this->params['sessionId'] );
+
+ # Stash the upload
+ $key = $this->upload->stashFile();
if ( $this->params['leaveMessage'] ) {
$this->user->leaveUserMessage(
wfMsg( 'upload-warning-subj' ),
wfMsg( 'upload-warning-msg',
- $this->params['sessionKey'],
+ $key,
$this->params['url'] )
);
} else {
+ wfSetupSession( $this->params['sessionId'] );
$this->storeResultInSession( 'Warning',
'warnings', $warnings );
+ session_write_close();
}
- # Stash the upload in the session
- $this->upload->stashSession( $this->params['sessionKey'] );
- session_write_close();
-
return true;
}
}
@@ -151,6 +151,10 @@ class UploadFromUrlJob extends Job {
$$session['result'] = 'Queued';
}
+ /**
+ * @param $key
+ * @return mixed
+ */
public static function &getSessionData( $key ) {
if ( !isset( $_SESSION[self::SESSION_KEYNAME][$key] ) ) {
$_SESSION[self::SESSION_KEYNAME][$key] = array();