mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-10-05 17:49:16 +03:00
LibWeb: Ensure SkiaSurface is fully defined before it is allocated
LLVM 18 on macOS correctly errs when we try to allocate an incomplete SkiaSurface object.
This commit is contained in:
parent
d9470d6a93
commit
6369737676
Notes:
sideshowbarker
2024-07-17 04:57:23 +09:00
Author: https://github.com/trflynn89 Commit: https://github.com/LadybirdBrowser/ladybird/commit/6369737676 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/307
@ -38,6 +38,19 @@
|
||||
|
||||
namespace Web::Painting {
|
||||
|
||||
class DisplayListPlayerSkia::SkiaSurface {
|
||||
public:
|
||||
SkCanvas& canvas() const { return *surface->getCanvas(); }
|
||||
|
||||
SkiaSurface(sk_sp<SkSurface> surface)
|
||||
: surface(move(surface))
|
||||
{
|
||||
}
|
||||
|
||||
private:
|
||||
sk_sp<SkSurface> surface;
|
||||
};
|
||||
|
||||
#ifdef AK_OS_MACOS
|
||||
class SkiaMetalBackendContext final : public SkiaBackendContext {
|
||||
AK_MAKE_NONCOPYABLE(SkiaMetalBackendContext);
|
||||
@ -94,19 +107,6 @@ DisplayListPlayerSkia::DisplayListPlayerSkia(SkiaBackendContext& context, Core::
|
||||
}
|
||||
#endif
|
||||
|
||||
class DisplayListPlayerSkia::SkiaSurface {
|
||||
public:
|
||||
SkCanvas& canvas() const { return *surface->getCanvas(); }
|
||||
|
||||
SkiaSurface(sk_sp<SkSurface> surface)
|
||||
: surface(move(surface))
|
||||
{
|
||||
}
|
||||
|
||||
private:
|
||||
sk_sp<SkSurface> surface;
|
||||
};
|
||||
|
||||
DisplayListPlayerSkia::DisplayListPlayerSkia(Gfx::Bitmap& bitmap)
|
||||
{
|
||||
VERIFY(bitmap.format() == Gfx::BitmapFormat::BGRA8888);
|
||||
|
Loading…
Reference in New Issue
Block a user