In a WebKit2 world, at rest, we are in a state where NSGraphicsContext is null (because we have no NSWindow, NSViews, etc.)
LocalCurrentGraphicsContext is supposed to make temporary changes to the current Cocoa graphics context. However! It will not restore the current context to null, so you can end up with an unexpected context as the "at rest" context.
Created attachment 168327 [details]
Comment on attachment 168327 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=168327&action=review
> + LocalCurrentGraphicsContext is meant to cause temporary changes to
> + NSGraphicsContext's currentContext. However, if it is entered when
> + currentContext is null, it will not restore to null, as a null
> + m_savedNSGraphicsContext was being used to indicate that the current and
> + passed-in graphics contexts were equal (and thus no save/restore was required).
You should also mentiong flipping the order of the restores.