summaryrefslogtreecommitdiff
path: root/libs/utils/Parcel.cpp
diff options
context:
space:
mode:
author Jean-Baptiste Queru <jbq@google.com> 2009-03-18 11:33:14 -0700
committer Jean-Baptiste Queru <jbq@google.com> 2009-03-18 11:33:14 -0700
commit732ca39b704428b77ef305826d4e6c07190fd7ed (patch)
tree0b575888c39771713beb00a816479b1cdf53242e /libs/utils/Parcel.cpp
parent15c399644d0bd343ef9ed23ccb117e49a0eb7f82 (diff)
parentebad147e654682b6f05438ca8f3685809df5d2e2 (diff)
Merge commit 'remotes/korg/cupcake' into merge
Conflicts: core/java/android/view/animation/TranslateAnimation.java core/jni/Android.mk core/res/res/values-en-rGB/strings.xml libs/audioflinger/AudioFlinger.cpp libs/surfaceflinger/LayerScreenshot.cpp packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
Diffstat (limited to 'libs/utils/Parcel.cpp')
-rw-r--r--libs/utils/Parcel.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/libs/utils/Parcel.cpp b/libs/utils/Parcel.cpp
index 2962b25aea..4225e67283 100644
--- a/libs/utils/Parcel.cpp
+++ b/libs/utils/Parcel.cpp
@@ -658,15 +658,20 @@ status_t Parcel::writeNativeHandle(const native_handle& handle)
status_t err;
err = writeInt32(handle.numFds);
if (err != NO_ERROR) return err;
-
+
err = writeInt32(handle.numInts);
if (err != NO_ERROR) return err;
-
+
for (int i=0 ; err==NO_ERROR && i<handle.numFds ; i++)
err = writeDupFileDescriptor(handle.data[i]);
-
+
+ if (err != NO_ERROR) {
+ LOGD("write native handle, write dup fd failed");
+ return err;
+ }
+
err = write(handle.data + handle.numFds, sizeof(int)*handle.numInts);
-
+
return err;
}