Index: components/cronet/android/org_chromium_net_UrlRequest.cc |
diff --git a/components/cronet/android/org_chromium_net_UrlRequest.cc b/components/cronet/android/org_chromium_net_UrlRequest.cc |
index 8ec8b7abdac5f64bba367abcd9204a9b1753de37..e94e853a1c48c8cc76c11c63468ec71cd19fbb6b 100644 |
--- a/components/cronet/android/org_chromium_net_UrlRequest.cc |
+++ b/components/cronet/android/org_chromium_net_UrlRequest.cc |
@@ -81,6 +81,16 @@ class JniURLRequestPeerDelegate |
cronet::Java_UrlRequest_finish(env, owner_); |
} |
+ virtual int OnReadUploadData(net::IOBuffer* buf, int buf_length) { |
mmenke
2014/08/05 19:32:41
OVERRIDE
mef
2014/08/05 20:44:28
Done.
|
+ JNIEnv* env = base::android::AttachCurrentThread(); |
+ jobject jbuf = env->NewDirectByteBuffer( |
mmenke
2014/08/05 19:32:41
jbuf seems to violate the C++ style guide - I'd su
mef
2014/08/05 20:44:28
Done.
|
+ reinterpret_cast<void*>(buf->data()), buf_length); |
+ jint bytes_read = |
+ cronet::Java_UrlRequest_onReadUploadChannel(env, owner_, jbuf); |
+ env->DeleteLocalRef(jbuf); |
mmenke
2014/08/05 19:32:41
Is this call actually needed? Seems like it's not
mef
2014/08/05 20:44:28
IIUIC this is explicit refcounting, so we have to
mmenke
2014/08/05 21:08:02
Hrm...I missed that ,ost use ScopedJavaLocalRef, w
mef
2014/08/05 21:38:45
Done.
|
+ return bytes_read; |
+ } |
+ |
protected: |
virtual ~JniURLRequestPeerDelegate() { |
JNIEnv* env = base::android::AttachCurrentThread(); |
@@ -176,12 +186,11 @@ static void SetUploadChannel(JNIEnv* env, |
jobject object, |
jlong urlRequestPeer, |
jstring content_type, |
- jobject content, |
jlong content_length) { |
URLRequestPeer* request = reinterpret_cast<URLRequestPeer*>(urlRequestPeer); |
SetPostContentType(env, request, content_type); |
- request->SetUploadChannel(env, content, content_length); |
+ request->SetUploadChannel(env, content_length); |
} |