Summary: | JavaInstanceJSC.cpp and JNIUtilityPrivate.cpp need to include jni_jsobject.h for jlong_to_pt() and ptr_to_jlong() | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Steve Block <steveblock> | ||||||
Component: | WebCore Misc. | Assignee: | Nobody <webkit-unassigned> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | android-webkit-unforking, ap, darin, steveblock | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Android | ||||||||
OS: | Android | ||||||||
Attachments: |
|
Description
Steve Block
2010-05-04 08:56:44 PDT
Created attachment 55024 [details]
Patch
Comment on attachment 55024 [details] Patch > + * bridge/jni/jni_jsobject.h: Guard Mac-specific code with PLATFORM(MAC) Why are you making this change? The entire file is inside #if ENABLE(MAC_JAVA_BRIDGE). > Why are you making this change? The entire file is inside #if
> ENABLE(MAC_JAVA_BRIDGE).
Android also defines MAC_JAVA_BRIDGE, which is used to protect all parts of the Java bridge, not just those parts specific to Mac. (The guard is probably poorly named. I can open a separate bug to fix that?) Without the additional PLATFORM(MAC) guard, the build fails on Android.
Comment on attachment 55024 [details] Patch > #define jlong_to_impptr(a) (static_cast<JSC::JSObject*>(((void*)(uintptr_t)(a)))) > #define ptr_to_jlong(a) ((jlong)(uintptr_t)(a)) > > +#if PLATFORM(MAC) > + > +#include <CoreFoundation/CoreFoundation.h> Normally in WebKit, conditional includes go up at the top of the file with the other includes, not down below things like macros. I also think this include is unneeded. r=me I've filed Bug 38544 to track the renaming of MAC_JAVA_BRIDGE. Created attachment 55043 [details]
Patch
> I also think this include is unneeded.
I think you're right. I've uploaded a new patch without this include to check the build on the buildbots.
Builders look OK. Landed manually as http://trac.webkit.org/changeset/58775 Closing bug as resolved fixed. |