diff --git a/core/Controller/AutoCompleteController.php b/core/Controller/AutoCompleteController.php
index 1ed326fb3ef64254ca5f8ef27753ac2af5ec665e..2e01f85c6398fbf5e8ca80907f8c7946205e71f1 100644
--- a/core/Controller/AutoCompleteController.php
+++ b/core/Controller/AutoCompleteController.php
@@ -69,8 +69,9 @@ class AutoCompleteController extends Controller {
 		// result from search() – thus nothing else to do here.
 		list($results,) = $this->collaboratorSearch->search($search, $shareTypes, false, $limit, 0);
 
-		// there won't be exact matches without a search string
+		$exactMatches = $results['exact'];
 		unset($results['exact']);
+		$results = array_merge_recursive($exactMatches, $results);
 
 		$sorters = array_reverse(explode('|', $sorter));
 		$this->autoCompleteManager->runSorters($sorters, $results, [
diff --git a/tests/Core/Controller/AutoCompleteControllerTest.php b/tests/Core/Controller/AutoCompleteControllerTest.php
index 06d0bf5241d41171d8cf70343aaf61ad6c23e6ef..bcd0d6e1cd344764cd333385c3fefa5b1fee9638 100644
--- a/tests/Core/Controller/AutoCompleteControllerTest.php
+++ b/tests/Core/Controller/AutoCompleteControllerTest.php
@@ -86,4 +86,33 @@ class AutoCompleteControllerTest extends TestCase {
 		$this->assertEquals($expected, $list);	// has better error output…
 		$this->assertSame($expected, $list);
 	}
+
+	public function testGetWithExactMatch() {
+		$searchResults = [
+			'exact' => [
+				'users' => [
+					['label' => 'Bob Y.', 'value' => ['shareWith' => 'bob']],
+				],
+				'robots' => [],
+			],
+			'users' => [
+				['label' => 'Robert R.', 'value' => ['shareWith' => 'bobby']],
+			],
+		];
+
+		$expected = [
+			[ 'id' => 'bob', 'label' => 'Bob Y.', 'source' => 'users'],
+			[ 'id' => 'bobby', 'label' => 'Robert R.', 'source' => 'users'],
+		];
+
+		$this->collaboratorSearch->expects($this->once())
+			->method('search')
+			->willReturn([$searchResults, false]);
+
+		$response = $this->controller->get('bob', 'files', '42', null);
+
+		$list = $response->getData();
+		$this->assertEquals($expected, $list);	// has better error output…
+		$this->assertSame($expected, $list);
+	}
 }