The routines for getting/putting image data from/to the ImageBuffer's backing store are solely tied to that backing store and are also getting a bit complicated. It makes sense to create an ImageBufferData.cpp to house this logic.
Created attachment 88846 [details]
EWS bots likely couldn't patch because of the xcodeproj file changing in the interim. I'm going to try again on the EWS bots by uploading the same patch again (after an update). If they just fail again (likely), I'll give it a run this evening when traffic is hopefully slower. I'm unsure of the project file changes needed for other projects and am pretty sure that the refactoring may need extra changes on other projects anyhow.
Created attachment 88887 [details]
Attachment 88887 [details] did not build on chromium:
Build output: http://queues.webkit.org/results/8377184
Created attachment 89485 [details]
Created attachment 89490 [details]
Comment on attachment 89490 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=89490&action=review
> +#if (PLATFORM(MAC) && PLATFORM(CA) && !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD) && !defined(BUILDING_ON_SNOW_LEOPARD))
> +#define WTF_USE_IOSURFACE_CANVAS_BACKING_STORE 1
Shouldn't this be in ImageBufferCG.h?
> > +#if (PLATFORM(MAC) && PLATFORM(CA) && !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD) && !defined(BUILDING_ON_SNOW_LEOPARD))
> > +#define WTF_USE_IOSURFACE_CANVAS_BACKING_STORE 1
> > +#endif
> Shouldn't this be in ImageBufferCG.h?
It was in ImageBuffer.h because it was need there and below. I suppose since it's more specific to CG land and it wouldn't hurt, I'll just move it to ImageBufferCG.h.
Committed r83786: <http://trac.webkit.org/changeset/83786>