diff --git a/lib/private/share/share.php b/lib/private/share/share.php
index 0c42853302da4d0f9c42ba3a72e530d8b576475b..7fd5cd70e1d8455c574ace1d7edccbfe8ff6cbd7 100644
--- a/lib/private/share/share.php
+++ b/lib/private/share/share.php
@@ -595,6 +595,7 @@ class Share extends \OC\Share\Constants {
 			$shareWith['group'] = $group;
 			$shareWith['users'] = array_diff(\OC_Group::usersInGroup($group), array($uidOwner));
 		} else if ($shareType === self::SHARE_TYPE_LINK) {
+			$updateExistingShare = false;
 			if (\OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes') == 'yes') {
 
 				// when updating a link share
@@ -629,7 +630,7 @@ class Share extends \OC\Share\Constants {
 					throw new \Exception($message_t);
 				}
 
-				if (!empty($updateExistingShare) &&
+				if ($updateExistingShare === false &&
 						self::isDefaultExpireDateEnabled() &&
 						empty($expirationDate)) {
 					$expirationDate = Helper::calcExpireDate();
diff --git a/tests/lib/share/share.php b/tests/lib/share/share.php
index 24dedb619f8b8165f70fe874f5fb7ba5bf7a0241..bb827eece73a68a72678803eedd565c15b7e8a29 100644
--- a/tests/lib/share/share.php
+++ b/tests/lib/share/share.php
@@ -631,6 +631,32 @@ class Test_Share extends PHPUnit_Framework_TestCase {
 		);
 	}
 
+	public function testShareItemWithLinkAndDefaultExpireDate() {
+		OC_User::setUserId($this->user1);
+
+		\OC_Appconfig::setValue('core', 'shareapi_default_expire_date', 'yes');
+		\OC_Appconfig::setValue('core', 'shareapi_expire_after_n_days', '2');
+
+		$token = OCP\Share::shareItem('test', 'test.txt', OCP\Share::SHARE_TYPE_LINK, null, OCP\PERMISSION_READ);
+		$this->assertInternalType(
+			'string',
+			$token,
+			'Failed asserting that user 1 successfully shared text.txt as link with token.'
+		);
+
+		// share should have default expire date
+
+		$row = $this->getShareByValidToken($token);
+		$this->assertNotEmpty(
+			$row['expiration'],
+			'Failed asserting that the returned row has an default expiration date.'
+		);
+
+		\OC_Appconfig::deleteKey('core', 'shareapi_default_expire_date');
+		\OC_Appconfig::deleteKey('core', 'shareapi_expire_after_n_days');
+
+	}
+
 	public function testUnshareAll() {
 		$this->shareUserTestFileWithUser($this->user1, $this->user2);
 		$this->shareUserTestFileWithUser($this->user2, $this->user3);