Fix incorrect C++ return value of PictureRecorder::endRecording() (#47645)

The Dart code has the following declaration:

```dart
  @Native<Void Function(Pointer<Void>, Handle)>(symbol: 'PictureRecorder::endRecording')
  external void _endRecording(_NativePicture outPicture);
```

=> Dart doesn't expect to get a return value, so C++ shouldn't return
anything.
diff --git a/lib/ui/painting/picture.cc b/lib/ui/painting/picture.cc
index 74c7b0d..400c766 100644
--- a/lib/ui/painting/picture.cc
+++ b/lib/ui/painting/picture.cc
@@ -26,13 +26,12 @@
 
 IMPLEMENT_WRAPPERTYPEINFO(ui, Picture);
 
-fml::RefPtr<Picture> Picture::Create(Dart_Handle dart_handle,
-                                     sk_sp<DisplayList> display_list) {
+void Picture::CreateAndAssociateWithDartWrapper(
+    Dart_Handle dart_handle,
+    sk_sp<DisplayList> display_list) {
   FML_DCHECK(display_list->isUIThreadSafe());
   auto canvas_picture = fml::MakeRefCounted<Picture>(std::move(display_list));
-
   canvas_picture->AssociateWithDartWrapper(dart_handle);
-  return canvas_picture;
 }
 
 Picture::Picture(sk_sp<DisplayList> display_list)
diff --git a/lib/ui/painting/picture.h b/lib/ui/painting/picture.h
index 6d41cbe..eb25b9a 100644
--- a/lib/ui/painting/picture.h
+++ b/lib/ui/painting/picture.h
@@ -20,8 +20,9 @@
 
  public:
   ~Picture() override;
-  static fml::RefPtr<Picture> Create(Dart_Handle dart_handle,
-                                     sk_sp<DisplayList> display_list);
+  static void CreateAndAssociateWithDartWrapper(
+      Dart_Handle dart_handle,
+      sk_sp<DisplayList> display_list);
 
   sk_sp<DisplayList> display_list() const { return display_list_; }
 
diff --git a/lib/ui/painting/picture_recorder.cc b/lib/ui/painting/picture_recorder.cc
index a99b5e5..6a24e93 100644
--- a/lib/ui/painting/picture_recorder.cc
+++ b/lib/ui/painting/picture_recorder.cc
@@ -31,20 +31,18 @@
   return display_list_builder_;
 }
 
-fml::RefPtr<Picture> PictureRecorder::endRecording(Dart_Handle dart_picture) {
+void PictureRecorder::endRecording(Dart_Handle dart_picture) {
   if (!canvas_) {
-    return nullptr;
+    return;
   }
 
-  fml::RefPtr<Picture> picture;
-
-  picture = Picture::Create(dart_picture, display_list_builder_->Build());
+  Picture::CreateAndAssociateWithDartWrapper(dart_picture,
+                                             display_list_builder_->Build());
   display_list_builder_ = nullptr;
 
   canvas_->Invalidate();
   canvas_ = nullptr;
   ClearDartWrapper();
-  return picture;
 }
 
 }  // namespace flutter
diff --git a/lib/ui/painting/picture_recorder.h b/lib/ui/painting/picture_recorder.h
index c5046a4..ccbc8d0 100644
--- a/lib/ui/painting/picture_recorder.h
+++ b/lib/ui/painting/picture_recorder.h
@@ -22,7 +22,7 @@
   ~PictureRecorder() override;
 
   sk_sp<DisplayListBuilder> BeginRecording(SkRect bounds);
-  fml::RefPtr<Picture> endRecording(Dart_Handle dart_picture);
+  void endRecording(Dart_Handle dart_picture);
 
   void set_canvas(fml::RefPtr<Canvas> canvas) { canvas_ = std::move(canvas); }