Merge pull request #8 from andrepew/master

When an Android app doesn't have the INTERNET permission, getHeaderFields() returns null resulting in NPE
This commit is contained in:
Naoyuki Kanezawa
2014-08-10 18:07:20 +09:00

View File

@@ -201,10 +201,15 @@ public class PollingXHR extends Polling {
} }
Map<String, String> headers = new TreeMap<String, String>(String.CASE_INSENSITIVE_ORDER); Map<String, String> headers = new TreeMap<String, String>(String.CASE_INSENSITIVE_ORDER);
for (String key : xhr.getHeaderFields().keySet()) {
Map<String, List<String>> xhrHeaderFields = xhr.getHeaderFields();
if(xhrHeaderFields != null) {
for (String key : xhrHeaderFields.keySet()) {
if (key == null) continue; if (key == null) continue;
headers.put(key, xhr.getHeaderField(key)); headers.put(key, xhr.getHeaderField(key));
} }
}
self.onResponseHeaders(headers); self.onResponseHeaders(headers);
final int statusCode = xhr.getResponseCode(); final int statusCode = xhr.getResponseCode();