[SofaPyhon3/Plugin] Fix regression introduced in PR #243#276
Merged
damienmarchal merged 1 commit intosofa-framework:masterfrom Jun 22, 2022
Merged
Conversation
To fix memory error in PR sofa-framework#243 There is the need to get the latest data by calling getValue(). The way it was done in the PR is wrong because it is using a begin/end edit pairs which trigger the DDG's follower to notify the data is dirty (while it is not). The consequence was that every call on read access eg: print(myobjec.position.value) was triggering the data change mecanisme
alxbilger
approved these changes
Jun 21, 2022
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
To fix memory error in PR #243 there is the need to get the latest data by calling getValue().
The way it was done in the 243 PR is wrong because it is using a begin/end edit pairs which trigger the DDG's followers (and not only precessors) which in return notify that the data is not eddited anymoer (while it was not editted at all). The consequence was that every call on read access on the python side eg: print(myobject.position.value)
was triggering the data change mecanisme to the position's follower.