diff --git a/apps/contacts/import.php b/apps/contacts/import.php
index b2c55bd42ace9839b97d4cce8754e26db6ebb979..85d4cebeb02299c049dcef941db99ab11c5490a3 100644
--- a/apps/contacts/import.php
+++ b/apps/contacts/import.php
@@ -10,6 +10,9 @@ ob_start();
  
 OCP\JSON::checkLoggedIn();
 OCP\App::checkAppEnabled('contacts');
+session_write_close();
+
+$cr = "\r";
 $nl = "\n";
 $progressfile = 'import_tmp/' . md5(session_id()) . '.txt';
 
@@ -52,6 +55,10 @@ writeProgress('20');
 $searchfor = array('VCARD');
 $parts = $searchfor;
 $filearr = explode($nl, $file);
+if(count($filearr) == 1) { // Mac eol
+	$filearr = explode($cr, $file);
+}
+
 $inelement = false;
 $parts = array();
 $i = 0;