Bug #2847

Updated by Teemu Murtola over 1 year ago

If you use a tool that understands selections, but does not require the -s flag for basic use, it is impossible to provide the selection through an index file (-n) if -s is not provided. (-n). This gives an error that the maximum allowed atom index is zero. One example of an affected tool is gmx rdf. This works in release-2018, but not in release-2019 or master.

This seems to have got broken in I2f43e62bc2d97f5e654f15c6e474b9b71d7106ec, which changed the semantics of TopologyInformation. All comments in the class still say that it returns nullptr as the topology when no topology is loaded, and the selection code relies on that, but that no longer matches the implementation. Originally the class was a simple proxy to accessing different topology-related information in the tools, but it got a lot of other responsibilities as well with the mentioned change. The desired behavior of the class should be decided on (and/or the different responsibilities split), the documentation fixed to match the behavior, and all uses gone through to check that they actually use it as the decided behavior requires. It is likely that currently different parts of the code rely on conflicting behavior... Not sure if there are also other corner cases that may be broken.