Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Call dup on input to #fragment before preprocessing
The introduction of this #preprocess method in bf0d753 broke sanitisation of frozen strings (for example, hash keys). The reason this was not a problem previously is that after #preprocess is called, the input is only ever used by interpolation into another string, so it never matters that the object is itself frozen. This patch has the input stringified and duplicated at the start of preprocessing. I suspect that was already the intent, since this line of code already stringified and duplicated it, but then threw the result away. The only actual change here is assigning the result to the input variable instead. This commit also adds a test to ensure that #fragment always works on a frozen input string.
- Loading branch information