--- C:/Users/Dan/Desktop/file1.php	Thu Nov 21 18:04:21 2013
+++ C:/Users/Dan/Desktop/file2.php	Thu Nov 21 18:09:09 2013
@@ -389,17 +397,19 @@
       // Perform the copy operation, with a cleaned-up path.
       $this->sourcePath = self::urlencode($this->sourcePath);
     }
-    if (!@copy($this->sourcePath, $destination)) {
+    try {
+      copy($this->sourcePath, $destination);
+      return TRUE;
+    }
+    catch (Exception $e) {
       $migration = Migration::currentMigration();
-      $migration->saveMessage(t('The specified file %file could not be copied to ' .
-              '%destination.',
-              array('%file' => $this->sourcePath, '%destination' => $destination)));
+      $migration->saveMessage(
+              t('The specified file %file could not be copied to %destination: "%exception_msg"',
+                  array('%file' => $this->sourcePath,
+                        '%destination' => $destination,
+                        '%excepttion_msg' => $e->getMessage())));
       return FALSE;
     }
-    else {
-      return TRUE;
-    }
-  }
 
   /**
    * Urlencode all the components of a remote filename.
