-
Charles Ferguson authored
The module search used to use a 'use' statement to find the modules and then read the '$VERSION' variable. This would allow code to be executed (which would be a bad thing), and means that we're at the whim of what the module does to '$VERSION'. In this case, the issue lies with DBI, which calls 'eval' on the version number, turning 1.630 into 1.63, which isn't the same thing. Now, we try to locate the file and extract the version number from it as assigned to a variable. If we can do this then all is well and we use that. If we cannot, then we fall back to using 'require', which will then do the code execution, but should at least find the file. The -f option disables the reading of the site customisations, which could affect the operation of the code.
68c0dc70