Proper checks for SCHED_NORMAL.

It was checked to be in range -20..19 AND 1..99 before.

Fixes: 116135964
Test: boot Pixel 2, check for errors
Change-Id: I8f6d16c6f13a7c99b56c90eb836bff8ddd4c9384
diff --git a/transport/HidlTransportSupport.cpp b/transport/HidlTransportSupport.cpp
index b214f1a..591ccba 100644
--- a/transport/HidlTransportSupport.cpp
+++ b/transport/HidlTransportSupport.cpp
@@ -47,17 +47,24 @@
         return false;
     }
 
-    if (policy != SCHED_NORMAL && policy != SCHED_FIFO && policy != SCHED_RR) {
-        LOG(ERROR) << "Invalid scheduler policy " << policy;
-        return false;
-    }
-
-    if (policy == SCHED_NORMAL && (priority < -20 || priority > 19)) {
-        LOG(ERROR) << "Invalid priority for SCHED_NORMAL: " << priority;
-        return false;
-    } else if (priority < 1 || priority > 99) {
-        LOG(ERROR) << "Invalid priority for real-time policy: " << priority;
-        return false;
+    switch (policy) {
+        case SCHED_NORMAL: {
+            if (priority < -20 || priority > 19) {
+                LOG(ERROR) << "Invalid priority for SCHED_NORMAL: " << priority;
+                return false;
+            }
+        } break;
+        case SCHED_RR:
+        case SCHED_FIFO: {
+            if (priority < 1 || priority > 99) {
+                LOG(ERROR) << "Invalid priority for " << policy << " policy: " << priority;
+                return false;
+            }
+        } break;
+        default: {
+            LOG(ERROR) << "Invalid scheduler policy " << policy;
+            return false;
+        }
     }
 
     // Due to ABI considerations, IBase cannot have a destructor to clean this up.