Branch: refs/heads/master
  Home:   https://github.com/synfig/synfig
  Commit: 88c9e976c1a150ef86452c6fed81746af57322bc
      
https://github.com/synfig/synfig/commit/88c9e976c1a150ef86452c6fed81746af57322bc
  Author: ice0 <konop...@gmail.com>
  Date:   2021-09-23 (Thu, 23 Sep 2021)

  Changed paths:
    M ETL/ETL/_handle.h
    M synfig-core/src/modules/lyr_std/perspective.cpp
    M synfig-core/src/synfig/rendering/primitive/transformationaffine.h

  Log Message:
  -----------
  Made shared_objects non-copyable (#2291)

The concept of ETL smart pointers is different from std smart pointers.
Std smart pointers store the reference count inside the smart pointer itself.
Unlike std, ETL stores a reference count within an object.

For this reason, you cannot put object to the etl::handle. Only objects 
inherited from etl::shared_object.
The same concept is used in Glib::RefPtr (they switched to std::shared_ptr in 
gtkmm 4)
https://www.murrayc.com/permalink/2017/04/20/gtkmm-4-progress/

I removed the copy constructor just to make sure it doesn't break anything.
But as you can see there is a code which copying Transformations directly, so I 
added explicit copy constructor to them.

- Added copy constructors to Transformations




_______________________________________________
Synfig-devl mailing list
Synfig-devl@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to