Make the OAuth authorization available or not depending upon a variable in oauth.xml
[pub/Android/ownCloud.git] / src / com / owncloud / android / files / services / FileObserverService.java
index 1b66509..d4bf24d 100644 (file)
@@ -1,9 +1,10 @@
 /* ownCloud Android client application
  *   Copyright (C) 2012 Bartek Przybylski
+ *   Copyright (C) 2012-2013 ownCloud Inc.
  *
  *   This program is free software: you can redistribute it and/or modify
  *   it under the terms of the GNU General Public License as published by
- *   the Free Software Foundation, either version 3 of the License, or
+ *   the Free Software Foundation, either version 2 of the License, or
  *   (at your option) any later version.
  *
  *   This program is distributed in the hope that it will be useful,
@@ -137,7 +138,7 @@ public class FileObserverService extends Service {
                 ProviderTableMeta.FILE_KEEP_IN_SYNC + " = ?",
                 new String[] {String.valueOf(1)},
                 null);
-        if (!c.moveToFirst()) return;
+        if (c == null || !c.moveToFirst()) return;
         AccountManager acm = AccountManager.get(this);
         Account[] accounts = acm.getAccounts();
         do {
@@ -155,9 +156,10 @@ public class FileObserverService extends Service {
                 continue;
 
             String path = c.getString(c.getColumnIndex(ProviderTableMeta.FILE_STORAGE_PATH));
+            if (path == null || path.length() <= 0)
+                continue;
             OwnCloudFileObserver observer =
                     new OwnCloudFileObserver(   path, 
-                                                storage.getFileByPath(c.getString(c.getColumnIndex(ProviderTableMeta.FILE_PATH))),
                                                 account, 
                                                 getApplicationContext(), 
                                                 OwnCloudFileObserver.CHANGES_ONLY);
@@ -197,8 +199,7 @@ public class FileObserverService extends Service {
         OwnCloudFileObserver observer = mObserversMap.get(localPath);
         if (observer == null) {
             /// the local file was never registered to observe before
-            observer = new OwnCloudFileObserver(   localPath, 
-                                                    file,
+            observer = new OwnCloudFileObserver(    localPath, 
                                                     account, 
                                                     getApplicationContext(), 
                                                     OwnCloudFileObserver.CHANGES_ONLY);