From f15162f500492a537ad0b63ea5bc73b088309cd4 Mon Sep 17 00:00:00 2001
From: Kristof De Langhe <kristof.delanghe@atmire.com>
Date: Thu, 7 Feb 2019 15:50:17 +0100
Subject: [PATCH] 59415: Prevent empty pages returning error, initialize empty
 array instead

---
 src/app/core/data/dso-response-parsing.service.ts | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/app/core/data/dso-response-parsing.service.ts b/src/app/core/data/dso-response-parsing.service.ts
index aff450781f..a8e0664c2e 100644
--- a/src/app/core/data/dso-response-parsing.service.ts
+++ b/src/app/core/data/dso-response-parsing.service.ts
@@ -27,7 +27,13 @@ export class DSOResponseParsingService extends BaseResponseParsingService implem
   }
 
   parse(request: RestRequest, data: DSpaceRESTV2Response): RestResponse {
-    const processRequestDTO = this.process<NormalizedObject,ResourceType>(data.payload, request.href);
+    let processRequestDTO;
+    // Prevent empty pages returning an error, initialize empty array instead.
+    if (hasValue(data.payload) && hasValue(data.payload.page) && data.payload.page.totalElements === 0) {
+      processRequestDTO = { page: [] };
+    } else {
+      processRequestDTO = this.process<NormalizedObject, ResourceType>(data.payload, request.href);
+    }
     let objectList = processRequestDTO;
     if (hasNoValue(processRequestDTO)) {
       return new DSOSuccessResponse([], data.statusCode, undefined)
-- 
GitLab