From 6ce0db575f0469c47bc42527211c35d62fa126dd Mon Sep 17 00:00:00 2001 From: Jimmy Shih Date: Fri, 23 Aug 2013 12:51:53 -0700 Subject: [PATCH] Fix null pointer exception with dataSourceManager in TrackDataHub --- .../apps/mytracks/content/TrackDataHub.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/MyTracks/src/com/google/android/apps/mytracks/content/TrackDataHub.java b/MyTracks/src/com/google/android/apps/mytracks/content/TrackDataHub.java index a155d5ed8..c15a75543 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/content/TrackDataHub.java +++ b/MyTracks/src/com/google/android/apps/mytracks/content/TrackDataHub.java @@ -117,8 +117,10 @@ public class TrackDataHub implements DataSourceListener { runInHanderThread(new Runnable() { @Override public void run() { - dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); - loadDataForAll(); + if (dataSourceManager != null) { + dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); + loadDataForAll(); + } } }); } @@ -173,9 +175,11 @@ public class TrackDataHub implements DataSourceListener { runInHanderThread(new Runnable() { @Override public void run() { - trackDataManager.registerListener(trackDataListener, trackDataTypes); - dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); - loadDataForListener(trackDataListener); + if (dataSourceManager != null) { + trackDataManager.registerListener(trackDataListener, trackDataTypes); + dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); + loadDataForListener(trackDataListener); + } } }); } @@ -189,8 +193,10 @@ public class TrackDataHub implements DataSourceListener { runInHanderThread(new Runnable() { @Override public void run() { - trackDataManager.unregisterListener(trackDataListener); - dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); + if (dataSourceManager != null) { + trackDataManager.unregisterListener(trackDataListener); + dataSourceManager.updateListeners(trackDataManager.getRegisteredTrackDataTypes()); + } } }); }