This repository was archived by the owner on Feb 25, 2025. It is now read-only.
File tree 1 file changed +14
-2
lines changed
impeller/renderer/backend/metal
1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change 3
3
// found in the LICENSE file.
4
4
5
5
#include " impeller/renderer/backend/metal/pipeline_library_mtl.h"
6
+
6
7
#include < Metal/Metal.h>
7
8
9
+ #include " flutter/fml/build_config.h"
8
10
#include " flutter/fml/container.h"
9
11
#include " impeller/base/promise.h"
10
12
#include " impeller/renderer/backend/metal/compute_pipeline_mtl.h"
131
133
));
132
134
promise->set_value (new_pipeline);
133
135
};
134
- [device_ newRenderPipelineStateWithDescriptor: GetMTLRenderPipelineDescriptor (
135
- descriptor)
136
+ auto mtl_descriptor = GetMTLRenderPipelineDescriptor (descriptor);
137
+ #if FML_OS_IOS
138
+ [device_ newRenderPipelineStateWithDescriptor: mtl_descriptor
136
139
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
137
149
return pipeline_future;
138
150
}
139
151
You can’t perform that action at this time.
0 commit comments