[Webkit-unassigned] [Bug 134679] Fix the !ENABLE(FILTERS) && !ENABLE(CSS_FILTERS) build after r167497

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jul 14 06:25:43 PDT 2014


https://bugs.webkit.org/show_bug.cgi?id=134679





--- Comment #5 from Csaba Osztrogonác <ossy at webkit.org>  2014-07-14 06:25:59 PST ---
(From update of attachment 234484)
View in context: https://bugs.webkit.org/attachment.cgi?id=234484&action=review

This bug was already fixed by https://bugs.webkit.org/show_bug.cgi?id=130394,
but r167497 removed the fix. The goal of this bug is to revert this incorrect
removal which caused the build failure mentioned in the description.

>> Source/WebCore/platform/graphics/ImageBuffer.h:39
>> +#include <runtime/TypedArrayInlines.h>
> 
> This is really unfortunate; includes that are only needed for the JavaScript bindings really don’t belong in the DOM implementation itself. However, there may be no other solution to this problem.

There are many includes of this headers everywhere, I don't think if we can avoid them:

$ grep -R "runtime/TypedArrayInlines.h" .
./WebCore/Modules/webaudio/AudioBuffer.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/testing/MockCDM.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/platform/graphics/filters/FilterEffect.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/platform/graphics/filters/FEGaussianBlur.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:#import <runtime/TypedArrayInlines.h>
./WebCore/html/canvas/WebGLRenderingContext.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/bindings/js/SerializedScriptValue.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/bindings/js/JSDOMBinding.h:#include <runtime/TypedArrayInlines.h>
./WebCore/bindings/js/JSWebGLRenderingContextCustom.cpp:#include <runtime/TypedArrayInlines.h>
./WebCore/bindings/js/JSCryptoAlgorithmBuilder.cpp:#include <runtime/TypedArrayInlines.h>

$ grep -R "runtime/JSCInlines.h" .
./WebCore/inspector/WebConsoleAgent.cpp:#include <runtime/JSCInlines.h>
./WebCore/inspector/InspectorDOMAgent.cpp:#include <runtime/JSCInlines.h>
./WebCore/xml/XMLHttpRequest.cpp:#include <runtime/JSCInlines.h>
./WebCore/bridge/jsc/BridgeJSC.h:#include <runtime/JSCInlines.h>
./WebCore/bridge/c/c_utility.h:#include <runtime/JSCInlines.h>
./WebCore/Modules/webaudio/AudioBuffer.cpp:#include <runtime/JSCInlines.h>
./WebCore/Modules/mediasource/SourceBuffer.cpp:#include <runtime/JSCInlines.h>
./WebCore/testing/MockCDM.cpp:#include <runtime/JSCInlines.h>
./WebCore/testing/Internals.cpp:#include <runtime/JSCInlines.h>
./WebCore/platform/SerializedPlatformRepresentation.h:#include <runtime/JSCInlines.h>
./WebCore/platform/graphics/filters/FilterEffect.cpp:#include <runtime/JSCInlines.h>
./WebCore/platform/graphics/filters/FEGaussianBlur.cpp:#include <runtime/JSCInlines.h>
./WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:#import <runtime/JSCInlines.h>
./WebCore/html/HTMLCanvasElement.cpp:#include <runtime/JSCInlines.h>
./WebCore/html/track/DataCue.h:#include <runtime/JSCInlines.h>
./WebCore/html/canvas/WebGLRenderingContext.cpp:#include <runtime/JSCInlines.h>
./WebCore/html/HTMLImageLoader.cpp:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSNodeFilterCondition.h:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/SerializedScriptValue.cpp:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSCryptoKeySerializationJWK.cpp:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSCustomXPathNSResolver.h:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSDictionary.h:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/WebCoreTypedArrayController.cpp:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSMessagePortCustom.h:#include <runtime/JSCInlines.h>
./WebCore/bindings/js/JSCryptoAlgorithmBuilder.cpp:#include <runtime/JSCInlines.h>
./WebCore/dom/PopStateEvent.cpp:#include <runtime/JSCInlines.h>
./WebCore/dom/CustomEvent.cpp:#include <runtime/JSCInlines.h>
./WebCore/dom/MessageEvent.cpp:#include <runtime/JSCInlines.h>
./WebCore/dom/Node.cpp:#include <runtime/JSCInlines.h>
./WebKit2/Shared/linux/WebMemorySamplerLinux.cpp:#include <runtime/JSCInlines.h>
./WebKit2/WebProcess/WebPage/WebPage.cpp:#include <runtime/JSCInlines.h>
./WebKit2/UIProcess/WebContext.cpp:#include <runtime/JSCInlines.h>

>> Source/WebCore/platform/graphics/ImageBuffer.h:40
>>  #include <runtime/Uint8ClampedArray.h>
> 
> This already-existing include is equally bad.

PassRefPtr<Uint8ClampedArray> is used in line 105 and 106, we really need this include:
http://trac.webkit.org/browser/trunk/Source/WebCore/platform/graphics/ImageBuffer.h#L105

It didn't cause build failures before, because it was built into filters objects. 
But I don't think if it is good if ImageBuffer depends on something built to a filter file.


$ grep -R "runtime/Uint8ClampedArray.h" .
./WebCore/platform/graphics/filters/FilterEffect.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEComponentTransfer.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEGaussianBlur.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEConvolveMatrix.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FilterEffect.h:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEBlend.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEMorphology.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEColorMatrix.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEComposite.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEDropShadow.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FELighting.h:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FEDisplacementMap.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/filters/FETurbulence.cpp:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/cg/ImageBufferDataCG.h:#include <runtime/Uint8ClampedArray.h>
./WebCore/platform/graphics/ImageBuffer.h:#include <runtime/Uint8ClampedArray.h>
./WebCore/html/ImageData.h:#include <runtime/Uint8ClampedArray.h>

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list