diff --git a/media/java/android/media/MediaHTTPConnection.java b/media/java/android/media/MediaHTTPConnection.java index dd731df0fbb03..aae1f517eeaf9 100644 --- a/media/java/android/media/MediaHTTPConnection.java +++ b/media/java/android/media/MediaHTTPConnection.java @@ -61,9 +61,9 @@ public class MediaHTTPConnection extends IMediaHTTPConnection.Stub { private final static int MAX_REDIRECTS = 20; public MediaHTTPConnection() { - CookieManager cookieManager = (CookieManager)CookieHandler.getDefault(); - if (cookieManager == null) { - Log.w(TAG, "MediaHTTPConnection: Unexpected. No CookieManager found."); + CookieHandler cookieHandler = CookieHandler.getDefault(); + if (cookieHandler == null) { + Log.w(TAG, "MediaHTTPConnection: Unexpected. No CookieHandler found."); } native_setup(); diff --git a/media/java/android/media/MediaHTTPService.java b/media/java/android/media/MediaHTTPService.java index b678630400cb5..3a0e58a172fed 100644 --- a/media/java/android/media/MediaHTTPService.java +++ b/media/java/android/media/MediaHTTPService.java @@ -41,34 +41,40 @@ public class MediaHTTPService extends IMediaHTTPService.Stub { synchronized (mCookieStoreInitialized) { // Only need to do it once for all connections if ( !mCookieStoreInitialized ) { - CookieManager cookieManager = (CookieManager)CookieHandler.getDefault(); - if (cookieManager == null) { - cookieManager = new CookieManager(); - CookieHandler.setDefault(cookieManager); - Log.v(TAG, "makeHTTPConnection: CookieManager created: " + cookieManager); - } - else { - Log.v(TAG, "makeHTTPConnection: CookieManager(" + cookieManager + ") exists."); + CookieHandler cookieHandler = CookieHandler.getDefault(); + if (cookieHandler == null) { + cookieHandler = new CookieManager(); + CookieHandler.setDefault(cookieHandler); + Log.v(TAG, "makeHTTPConnection: CookieManager created: " + cookieHandler); + } else { + Log.v(TAG, "makeHTTPConnection: CookieHandler (" + cookieHandler + ") exists."); } // Applying the bootstrapping cookies if ( mCookies != null ) { - CookieStore store = cookieManager.getCookieStore(); - for ( HttpCookie cookie : mCookies ) { - try { - store.add(null, cookie); - } catch ( Exception e ) { - Log.v(TAG, "makeHTTPConnection: CookieStore.add" + e); + if ( cookieHandler instanceof CookieManager ) { + CookieManager cookieManager = (CookieManager)cookieHandler; + CookieStore store = cookieManager.getCookieStore(); + for ( HttpCookie cookie : mCookies ) { + try { + store.add(null, cookie); + } catch ( Exception e ) { + Log.v(TAG, "makeHTTPConnection: CookieStore.add" + e); + } + //for extended debugging when needed + //Log.v(TAG, "MediaHTTPConnection adding Cookie[" + cookie.getName() + + // "]: " + cookie); } - //for extended debugging when needed - //Log.v(TAG, "MediaHTTPConnection adding Cookie[" + cookie.getName() + - // "]: " + cookie); + } else { + Log.w(TAG, "makeHTTPConnection: The installed CookieHandler is not a " + + "CookieManager. Can’t add the provided cookies to the cookie " + + "store."); } } // mCookies mCookieStoreInitialized = true; - Log.v(TAG, "makeHTTPConnection(" + this + "): cookieManager: " + cookieManager + + Log.v(TAG, "makeHTTPConnection(" + this + "): cookieHandler: " + cookieHandler + " Cookies: " + mCookies); } // mCookieStoreInitialized } // synchronized @@ -92,5 +98,4 @@ public class MediaHTTPService extends IMediaHTTPService.Stub { return null; } - }