|  | /* | 
|  | * Copyright 2021 Google LLC | 
|  | * | 
|  | * Use of this source code is governed by a BSD-style license that can be | 
|  | * found in the LICENSE file. | 
|  | */ | 
|  |  | 
|  | #include "include/core/SkAlphaType.h" | 
|  | #include "include/core/SkColorType.h" | 
|  | #include "include/core/SkImageInfo.h" | 
|  | #include "include/core/SkRefCnt.h" | 
|  | #include "include/core/SkSurface.h" | 
|  | #include "include/core/SkTypes.h" | 
|  | #include "include/gpu/GpuTypes.h" | 
|  | #include "include/gpu/GrDirectContext.h" | 
|  | #include "tests/CtsEnforcement.h" | 
|  | #include "tests/Test.h" | 
|  |  | 
|  | struct GrContextOptions; | 
|  |  | 
|  | DEF_GANESH_TEST_FOR_ALL_CONTEXTS(skbug12214, r, contextInfo, CtsEnforcement::kApiLevel_T) { | 
|  | auto imageInfo = SkImageInfo::Make(/*width=*/32, /*height=*/32, kRGBA_8888_SkColorType, | 
|  | kPremul_SkAlphaType); | 
|  | sk_sp<SkSurface> surface1 = SkSurface::MakeRenderTarget( | 
|  | contextInfo.directContext(), skgpu::Budgeted::kNo, imageInfo); | 
|  | sk_sp<SkSurface> surface2 = SkSurface::MakeRaster(imageInfo); | 
|  |  | 
|  | // The test succeeds if this draw does not crash. (See skia:12214) | 
|  | surface1->draw(surface2->getCanvas(), /*x=*/0, /*y=*/0); | 
|  | } |