「view this page in B3 βῆτα server」

Revisions №58205

branch: master 「№58205」
Commited by: Rocco Moretti
GitHub commit link: 「19257b04c137a658」 「№842」
Difference from previous tested commit:  code diff
Commit date: 2015-10-04 16:01:43

Merge pull request #842 from RosettaCommons/roccomoretti/inv_rot_remod Attempt to fix the inverse_rotamer_remodel integration test Recent changes mean that the inverse_rotamer_remodel integration test has gone from crashing silently to failing with a recognizable error. This provided an opportunity to start picking things apart. The current cause of failure looks to be an issue with the ReadResfileAndObeyLengthEvents taskoperation. The ReadResfileAndObeyLengthEvents taskop collects a number of Conformation LengthEvents and combines them to get a mapping of before to after residue numbers. The issue here is that the mapping code was pulling the total size from the stored Conformation (raw) pointer in the LengthEvents. This has two problems. The first is that it gets the length from the final conformation, rather than the length at the time the LengthEvent occured. The second is that the raw conformation pointer might have been invalidated, due to copying, etc. resulting in an invalid read. This pull request fixes that by storing the current value of the Conformation length when the LengthEvent is created, and then using that value (rather than the value from the Conformation pointer) when making the mapping. It does not address the more general issue of long-term storage of a raw Conformation pointer in Event objects, where the underlying Conformation might be invalidated in the meantime.

...