Index: src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java
===================================================================
--- src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(revision 16713)
+++ src/org/openstreetmap/josm/io/remotecontrol/RequestProcessor.java	(working copy)
@@ -407,7 +407,10 @@
     public static JsonArray getHandlersInfoAsJSON(Collection<String> handlers) {
         JsonArrayBuilder json = Json.createArrayBuilder();
         for (String s : Utils.firstNonNull(handlers, RequestProcessor.handlers.keySet())) {
-            json.add(getHandlerInfoAsJSON(s));
+            JsonObject infoAsJson = getHandlerInfoAsJSON(s);
+            if (infoAsJson != null) {
+                json.add(infoAsJson);
+            }
         }
         return json.build();
     }
@@ -419,6 +422,12 @@
      */
     public static JsonObject getHandlerInfoAsJSON(String cmd) {
         RequestHandler handler;
+        if (cmd == null) {
+            return null;
+        }
+        if (!cmd.startsWith("/")) {
+            cmd = new StringBuilder("/").append(cmd).toString();
+        }
         try {
             Class<?> c = handlers.get(cmd);
             if (c == null) return null;
Index: test/unit/org/openstreetmap/josm/io/remotecontrol/RequestProcessorTest.java
===================================================================
--- test/unit/org/openstreetmap/josm/io/remotecontrol/RequestProcessorTest.java	(nonexistent)
+++ test/unit/org/openstreetmap/josm/io/remotecontrol/RequestProcessorTest.java	(working copy)
@@ -0,0 +1,22 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.io.remotecontrol;
+
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
+
+import java.util.Arrays;
+
+import org.junit.jupiter.api.Test;
+
+/**
+ * Tests for {@link RequestProcessor}
+ * @author Taylor Smock
+ */
+public class RequestProcessorTest {
+    /**
+     * Non-regression test for <a href="https://josm.openstreetmap.de/ticket/19436">#19436</a>
+     */
+    @Test
+    public void testFeaturesDoesNotThrowNPE() {
+        assertDoesNotThrow(() -> RequestProcessor.getHandlersInfoAsJSON(Arrays.asList("add_node", "/add_node", "", null)));
+    }
+}
