private boolean handleHTTPLoad() { if (mHeaders == null) { mHeaders = new HashMap<String, String>(); } populateStaticHeaders(); populateHeaders(); // response was handled by UrlIntercept, don't issue HTTP request if (handleUrlIntercept()) return true; // response was handled by Cache, don't issue HTTP request if (handleCache()) { // push the request data down to the LoadListener // as response from the cache could be a redirect // and we may need to initiate a network request if the cache // can't satisfy redirect URL mListener.setRequestData(mMethod, mHeaders, mPostData, mIsHighPriority); return true; } if (WebView.LOGV_ENABLED) { Log.v(LOGTAG, "FrameLoader: http " + mMethod + " load for: " + mListener.url()); } boolean ret = false; int error = EventHandler.ERROR_UNSUPPORTED_SCHEME; try { ret = mNetwork.requestURL(mMethod, mHeaders, mPostData, mListener, mIsHighPriority); } catch (android.net.ParseException ex) { error = EventHandler.ERROR_BAD_URL; } catch (java.lang.RuntimeException ex) { /* probably an empty header set by javascript. We want the same result as bad URL */ error = EventHandler.ERROR_BAD_URL; } if (!ret) { mListener.error( error, mListener .getContext() .getText(EventHandler.errorStringResources[Math.abs(error)]) .toString()); return false; } return true; }