Something went wrong on our end
-
Jakub Klinkovský authored
The original 'modified' flag was not shared between instances of the smart pointer, so theoretically the same data object might have been synchronized more than once or even not at all. Another problem with the detection was that e.g. access through the modifyData method does not imply modification of the object's class data. For example if the object is TNL::Vector, we need to go through modifyData to be able to modify the vector data, but synchronization is not needed since we go through another pointer. Another example is repeated binding of the same object, e.g. bindDofs in the Problem classes.
Jakub Klinkovský authoredThe original 'modified' flag was not shared between instances of the smart pointer, so theoretically the same data object might have been synchronized more than once or even not at all. Another problem with the detection was that e.g. access through the modifyData method does not imply modification of the object's class data. For example if the object is TNL::Vector, we need to go through modifyData to be able to modify the vector data, but synchronization is not needed since we go through another pointer. Another example is repeated binding of the same object, e.g. bindDofs in the Problem classes.