diff --git a/angular.json b/angular.json
index c39b69a62cf0228c790408741884657458d66a6c..61062dc7802cd369273d5bc0e3ed5eed8f4e8129 100644
--- a/angular.json
+++ b/angular.json
@@ -22,7 +22,8 @@
               "src/manifest.webmanifest"
             ],
             "styles": [
-              "src/styles.scss"
+              "src/styles.scss",
+              "./node_modules/material-design-icons/iconfont/material-icons.css"
             ],
             "scripts": [
               "node_modules/marked/lib/marked.js"
diff --git a/package-lock.json b/package-lock.json
index 30d07bf68a605b12e4e4c28fac51823fb79f6d20..a0c77ab04c0b3f5b45be1ee62cede59104c5a957 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7168,6 +7168,11 @@
       "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz",
       "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg=="
     },
+    "material-design-icons": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/material-design-icons/-/material-design-icons-3.0.1.tgz",
+      "integrity": "sha1-mnHEh0chjrylHlGmbaaCA4zct78="
+    },
     "md5.js": {
       "version": "1.3.5",
       "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
diff --git a/package.json b/package.json
index ace66f832791854c9e79a71bdaca8251612e0171..c6f3d832f2851e23d790bbe744d82e43aa0d82d0 100644
--- a/package.json
+++ b/package.json
@@ -33,6 +33,7 @@
     "core-js": "^2.5.7",
     "hammerjs": "^2.0.8",
     "is-docker": "^1.1.0",
+    "material-design-icons": "^3.0.1",
     "ng2-charts": "^1.6.0",
     "ngx-markdown": "^1.6.0",
     "rxjs": "^6.5.2",
diff --git a/src/app/components/shared/comment-list/comment-list.component.html b/src/app/components/shared/comment-list/comment-list.component.html
index fee50c394401a7f82e5e3b2627aed6f4d74cc315..0c9fe5eb0168ff7d65c1250c3cad2afa33af9e69 100644
--- a/src/app/components/shared/comment-list/comment-list.component.html
+++ b/src/app/components/shared/comment-list/comment-list.component.html
@@ -12,12 +12,12 @@
   <span class="fill-remaining-space"></span>
 
   <div class="button-bar" fxLayoutAlign="center center">
-    <button mat-icon-button class="searchBarButton" *ngIf="!searchBox.value && comments.length > 0"
+    <button mat-icon-button class="searchBarButton" *ngIf="!searchBox.value && comments && comments.length > 0"
             [matMenuTriggerFor]="filterMenu" matTooltip="{{ 'comment-list.filter-comments' | translate }}">
       <mat-icon class="searchBarIcon">filter_list</mat-icon>
     </button>
 
-    <button mat-icon-button class="searchBarButton" *ngIf="!searchBox.value && comments.length > 0"
+    <button mat-icon-button class="searchBarButton" *ngIf="!searchBox.value && comments && comments.length > 0"
             [matMenuTriggerFor]="sortMenu" matTooltip="{{ 'comment-list.sort-comments' | translate }}">
       <mat-icon class="searchBarIcon">sort</mat-icon>
     </button>
@@ -71,6 +71,6 @@
 <app-comment *ngFor="let current of hideCommentsList ? filteredComments : comments" [comment]="current" [parseVote]="getVote(current)"></app-comment>
 </div>
 
-<div *ngIf="comments.length < 1" fxLayout="row" fxLayoutAlign="center center" class="no-comments">
+<div *ngIf="comments && comments.length < 1" fxLayout="row" fxLayoutAlign="center center" class="no-comments">
   <h4>{{ 'comment-page.no-comments' | translate }}</h4>
 </div>
diff --git a/src/app/components/shared/comment-list/comment-list.component.ts b/src/app/components/shared/comment-list/comment-list.component.ts
index e352c8327034704c66ea737f00c1102ed122d4d8..dae81293fac8310a2d82d2e7f253fe17e77b9be6 100644
--- a/src/app/components/shared/comment-list/comment-list.component.ts
+++ b/src/app/components/shared/comment-list/comment-list.component.ts
@@ -89,7 +89,7 @@ export class CommentListComponent implements OnInit {
   getComments(): void {
     this.isLoading = false;
     let commentThreshold = -10;
-    if (this.room.extensions && this.room.extensions['comments']) {
+    if (this.room && this.room.extensions && this.room.extensions['comments']) {
       commentThreshold = this.room.extensions['comments'].commentThreshold;
       if (this.hideCommentsList) {
         this.filteredComments = this.filteredComments.filter( x => x.score >= commentThreshold );
diff --git a/src/app/components/shared/comment/comment.component.ts b/src/app/components/shared/comment/comment.component.ts
index 00f4460757bcf14f0b72e990e377851ca9cb7904..45ef3e5c5dfd12af1fa10e40e5b7ddd2b85f7d5c 100644
--- a/src/app/components/shared/comment/comment.component.ts
+++ b/src/app/components/shared/comment/comment.component.ts
@@ -76,7 +76,7 @@ export class CommentComponent implements OnInit {
 
   @Input()
   set parseVote(vote: Vote) {
-    if (this.isStudent) {
+    if (vote) {
       this.hasVoted = vote.vote;
     }
   }
diff --git a/src/index.html b/src/index.html
index 5ac278b799d86a93081efa5e3013772d1af60d75..624754f8527f2226f7783a3ce8afbd8c1f81a504 100644
--- a/src/index.html
+++ b/src/index.html
@@ -35,7 +35,6 @@
   <link rel="shortcut icon" href="assets/icons/favicon.png">
 
   <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en">
-  <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
   <link rel="manifest" href="manifest.webmanifest">
   <meta name="theme-color" content="#fafafa">
 </head>