diff --git a/src/sview/resv_info.c b/src/sview/resv_info.c
index 06e81ee33f3a34e1a1b2676dd587175aa94063f4..a01bd82d116fe09ad13b7c2446aaff53fc554fd1 100644
--- a/src/sview/resv_info.c
+++ b/src/sview/resv_info.c
@@ -711,7 +711,8 @@ static List _create_resv_info_list(reserve_info_msg_t *resv_info_ptr,
 	}
 
 	for(i=0; i<resv_info_ptr->record_count; i++) {
-		resv_ptr = &(resv_info_ptr->reservation_array[i]);
+		if (!(resv_ptr = &(resv_info_ptr->reservation_array[i])))
+			break;
 		sview_resv_info_ptr = xmalloc(sizeof(sview_resv_info_t));
 		sview_resv_info_ptr->resv_ptr = resv_ptr;
 		sview_resv_info_ptr->color_inx = i % sview_colors_cnt;