Initialize InputEventLookup in a static function

Currently, the InputEventLookup class uses static fields, which means
that they are getting initialized early.

This causes issues with address sanitizers. The sanitizers report a
memory leak with the purely static approach. It's not clear whether this
is an actual issue, or just a bug elsewhere in the system.

To get around these problems, create a singleton instance of
InputEventLookup. This singleton will be created upon the first access
to any of its static functions. This helps resolves the sanitizer issues.

Bug: 271455682
Test: FUZZER=inputflinger_input_dispatcher_fuzzer; m $FUZZER && out/host/linux-x86/fuzz/x86_64/$FUZZER/$FUZZER
Note: test requires more CLs that are upcoming
Change-Id: Id655554db9c706f5d45eaebbee55e12519dcfdc8
2 files changed