dmuratshin 8 лет назад
Родитель
Сommit
cfd3526747

+ 8 - 5
oxygine/SDL/android/lib/src/org/oxygine/lib/HttpRequests.java

@@ -148,17 +148,20 @@ class HttpRequest extends AsyncTask<RequestDetails, Integer, String> {
             // expect HTTP 200 OK, so we don't mistakenly save error report
             // instead of the file
             respCode = connection.getResponseCode();
-            if (respCode != HttpURLConnection.HTTP_OK) {
-                nativeHttpRequestResponseError(details.handle, respCode);
-                return "Server returned HTTP " + respCode + " " + connection.getResponseMessage();
-            }
+            //if (respCode != HttpURLConnection.HTTP_OK) {
+            //    nativeHttpRequestResponseError(details.handle, respCode);
+            //    return "Server returned HTTP " + respCode + " " + connection.getResponseMessage();
+            //}
 
             // this will be useful to display download percentage
             // might be -1: server did not report the length
             int fileLength = connection.getContentLength();
 
             // download the file
-            input = connection.getInputStream();
+            if (respCode >= 400 && respCode <= 599)
+                input = connection.getErrorStream();
+            else
+                input = connection.getInputStream();
 
 
             ByteArrayOutputStream bt = null;

+ 1 - 1
oxygine/src/core/android/HttpRequestJavaTask.cpp

@@ -37,7 +37,7 @@ namespace oxygine
 
         jmethodID jRelease = env->GetStaticMethodID(_jHttpRequestsClass, "release", "()V");
         JNI_NOT_NULL(jRelease);
-        env->CallStaticObjectMethod(_jHttpRequestsClass, jRelease);
+        env->CallStaticVoidMethod(_jHttpRequestsClass, jRelease);
 
         env->DeleteGlobalRef(_jHttpRequestsClass);
         _jHttpRequestsClass = 0;