ShellSubscriber: Avoid rollover bug

We initialize 'mToken' instead of leaving it uninitialized, making
it much less likely to rollover.  In additional, we change our
check to inequality, to handle rollover if that were to happen.

There is the (theoretical) possibility of exactly 2^32 other
requests being claimed between our claim and our check.  It's
assumed that is essentially impossible and not a concern.

Test: TreeHugger
Bug: 150619687
Change-Id: Iee303e05082a6b3b31ed546bd62d3afe67c771d8
diff --git a/cmds/statsd/src/shell/ShellSubscriber.cpp b/cmds/statsd/src/shell/ShellSubscriber.cpp
index 6fa1654..c677222 100644
--- a/cmds/statsd/src/shell/ShellSubscriber.cpp
+++ b/cmds/statsd/src/shell/ShellSubscriber.cpp
@@ -41,7 +41,7 @@
 
     // critical-section
     std::unique_lock<std::mutex> lock(mMutex);
-    if (myToken < mToken) {
+    if (myToken != mToken) {
         // Some other subscription has already come in. Stop.
         return;
     }
diff --git a/cmds/statsd/src/shell/ShellSubscriber.h b/cmds/statsd/src/shell/ShellSubscriber.h
index 7fd625e..2f9b61a 100644
--- a/cmds/statsd/src/shell/ShellSubscriber.h
+++ b/cmds/statsd/src/shell/ShellSubscriber.h
@@ -108,7 +108,7 @@
 
     std::shared_ptr<SubscriptionInfo> mSubscriptionInfo = nullptr;
 
-    int mToken;
+    int mToken = 0;
 };
 
 }  // namespace statsd