Bug 33589 - [Android] Bridge interfaces Field, Class, Instance and Array use JSC-specific types
Summary: [Android] Bridge interfaces Field, Class, Instance and Array use JSC-specific...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Android Android
: P2 Normal
Assignee: Steve Block
URL:
Keywords:
Depends on: 33801
Blocks: 32154
  Show dependency treegraph
 
Reported: 2010-01-13 04:33 PST by Steve Block
Modified: 2010-01-21 03:54 PST (History)
5 users (show)

See Also:


Attachments
Patch 1 for Bug 33589 (33.61 KB, patch)
2010-01-13 06:54 PST, Steve Block
no flags Details | Formatted Diff | Diff
Patch 2 for Bug 33589 (36.46 KB, patch)
2010-01-13 10:15 PST, Steve Block
no flags Details | Formatted Diff | Diff
Patch 3 for Bug 33589 (37.23 KB, patch)
2010-01-14 05:55 PST, Steve Block
no flags Details | Formatted Diff | Diff
Patch 4 for Bug 33589 (28.60 KB, patch)
2010-01-20 07:08 PST, Steve Block
levin: review+
levin: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Block 2010-01-13 04:33:42 PST
WebCore/bridge/runtime.h defines a number of interfaces. Of these, Field, Class, Instance and Array use JSC-specific types. This causes problems on Android, where we can build with JSC or V8.

These JSC-specific interfaces should be moved out of runtime.h to allow the file to be used with both JSC and V8.
Comment 1 Steve Block 2010-01-13 06:54:27 PST
Created attachment 46455 [details]
Patch 1 for Bug 33589
Comment 2 WebKit Review Bot 2010-01-13 07:00:27 PST
Attachment 46455 [details] did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/185336
Comment 3 WebKit Review Bot 2010-01-13 07:07:37 PST
Attachment 46455 [details] did not build on gtk:
Build output: http://webkit-commit-queue.appspot.com/results/185344
Comment 4 Steve Block 2010-01-13 10:15:54 PST
Created attachment 46472 [details]
Patch 2 for Bug 33589

Fixes qt and gtk builds
Comment 5 WebKit Review Bot 2010-01-13 10:32:48 PST
Attachment 46472 [details] did not build on qt:
Build output: http://webkit-commit-queue.appspot.com/results/184509
Comment 6 Steve Block 2010-01-14 05:55:27 PST
Created attachment 46561 [details]
Patch 3 for Bug 33589

Second attempt to fix qt build.
Comment 7 Steve Block 2010-01-18 07:50:39 PST
(In reply to comment #6)
> Created an attachment (id=46561) [details]
> Patch 3 for Bug 33589
> 
> Second attempt to fix qt build.

The fix for this bug will involve splitting runtime.[cpp|h] into generic and JSC-specific parts. It's probably best to fix the naming of runtime.[cpp|h] first, so I've opened Bug 33801 as part of Bug 33712
Comment 8 Steve Block 2010-01-20 07:08:13 PST
Created attachment 47023 [details]
Patch 4 for Bug 33589

Updated patch now that runtime.[cpp|h] has been renamed to Bridge.[cpp|h]
Comment 9 David Levin 2010-01-20 22:49:47 PST
Comment on attachment 47023 [details]
Patch 4 for Bug 33589

> Index: WebCore/bridge/Bridge.h
> - * Copyright (C) 2003, 2008, 2009 Apple Inc. All rights reserved.
> + * Copyright (C) 2003, 2008, 2009, 2010 Apple Inc. All rights reserved.

It seems odd to add 2010 to the Apple copyright. I think you should add your own.

> +#if USE(JSC)
> +#include "BridgeJSC.h"
> +#endif

It seems that the preferred pattern is to put the if in the header itself and just include it unconditionally.
Comment 10 Steve Block 2010-01-21 03:54:08 PST
Addressed all comments

Landed manually as http://trac.webkit.org/changeset/53620

Closing bug as resolved