This repository was archived by the owner on Feb 25, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed
impeller/renderer/backend/metal Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change 33// found in the LICENSE file.
44
55#include " impeller/renderer/backend/metal/pipeline_library_mtl.h"
6+
67#include < Metal/Metal.h>
78
9+ #include " flutter/fml/build_config.h"
810#include " flutter/fml/container.h"
911#include " impeller/base/promise.h"
1012#include " impeller/renderer/backend/metal/compute_pipeline_mtl.h"
131133 ));
132134 promise->set_value (new_pipeline);
133135 };
134- [device_ newRenderPipelineStateWithDescriptor: GetMTLRenderPipelineDescriptor (
135- descriptor)
136+ auto mtl_descriptor = GetMTLRenderPipelineDescriptor (descriptor);
137+ #if FML_OS_IOS
138+ [device_ newRenderPipelineStateWithDescriptor: mtl_descriptor
136139 completionHandler: completion_handler];
140+ #else // FML_OS_IOS
141+ // TODO(116919): Investigate and revert speculative fix to make MTL pipeline
142+ // state creation use a worker.
143+ NSError * error = nil ;
144+ auto render_pipeline_state =
145+ [device_ newRenderPipelineStateWithDescriptor: mtl_descriptor
146+ error: &error];
147+ completion_handler (render_pipeline_state, error);
148+ #endif // FML_OS_IOS
137149 return pipeline_future;
138150}
139151
You can’t perform that action at this time.
0 commit comments