From 490a6a27e143b09f16ab6316090d2cda22805b26 Mon Sep 17 00:00:00 2001
From: "K. Shankari" <shankari@eecs.berkeley.edu>
Date: Fri, 3 Apr 2020 17:15:07 -0700
Subject: [PATCH 1/2] Revert "Add a check to see if we are initializing the
 state machine recursively"

This reverts commit 93f6435fc33e919e366c4db635e871c5a534fc65.
---
 plugin.xml                      | 2 +-
 src/ios/BEMTransitionNotifier.m | 5 -----
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/plugin.xml b/plugin.xml
index f2f7e5f..bb3e112 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
         id="edu.berkeley.eecs.emission.cordova.transitionnotify"
-        version="1.2.2">
+        version="1.2.1">
 
   <name>TransitionNotification</name>
   <description>Transition notification. Specially good for trip start and trip end notifications </description>
diff --git a/src/ios/BEMTransitionNotifier.m b/src/ios/BEMTransitionNotifier.m
index 541103c..a675bd8 100644
--- a/src/ios/BEMTransitionNotifier.m
+++ b/src/ios/BEMTransitionNotifier.m
@@ -52,11 +52,6 @@ - (void)pluginInitialize
 - (void)fireGenericTransitionFor:(NSString*) transition withUserInfo:(NSDictionary*) userInfo {
     [LocalNotificationManager addNotification:[NSString stringWithFormat:@"Received platform-specific notification %@", transition] showUI:FALSE];
 
-    TripDiaryStateMachine* instance = [TripDiaryStateMachine instance];
-    if (instance == NULL) {
-        [LocalNotificationManager addNotification:@"Unable to access state machine instance, must be recursive call on startup, bailing"];
-        return;
-    }
     if ([TripDiaryStateMachine instance].currState == kWaitingForTripStartState &&
             ([transition isEqualToString:CFCTransitionExitedGeofence] ||
              [transition isEqualToString:CFCTransitionVisitEnded])) {

From 88cc83fa631d852b9c0b596be60492d0045f5160 Mon Sep 17 00:00:00 2001
From: "K. Shankari" <shankari@eecs.berkeley.edu>
Date: Fri, 3 Apr 2020 18:13:13 -0700
Subject: [PATCH 2/2] More principled fix for the transition notify crash

See discussion at https://github.com/e-mission/e-mission-transition-notify/issues/18#issuecomment-608925943
This fixes #18
---
 plugin.xml                      | 2 +-
 src/ios/BEMTransitionNotifier.m | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/plugin.xml b/plugin.xml
index bb3e112..f2f7e5f 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
         id="edu.berkeley.eecs.emission.cordova.transitionnotify"
-        version="1.2.1">
+        version="1.2.2">
 
   <name>TransitionNotification</name>
   <description>Transition notification. Specially good for trip start and trip end notifications </description>
diff --git a/src/ios/BEMTransitionNotifier.m b/src/ios/BEMTransitionNotifier.m
index a675bd8..df72df2 100644
--- a/src/ios/BEMTransitionNotifier.m
+++ b/src/ios/BEMTransitionNotifier.m
@@ -52,8 +52,7 @@ - (void)pluginInitialize
 - (void)fireGenericTransitionFor:(NSString*) transition withUserInfo:(NSDictionary*) userInfo {
     [LocalNotificationManager addNotification:[NSString stringWithFormat:@"Received platform-specific notification %@", transition] showUI:FALSE];
 
-    if ([TripDiaryStateMachine instance].currState == kWaitingForTripStartState &&
-            ([transition isEqualToString:CFCTransitionExitedGeofence] ||
+    if (([transition isEqualToString:CFCTransitionExitedGeofence] ||
              [transition isEqualToString:CFCTransitionVisitEnded])) {
                 NSDictionary* autogenData = [self getTripStartData];
                 return [self postNativeAndNotify:TRIP_STARTED withData:autogenData];