Recognize file name in reference fragment in getPDFFileNameFromURL

The regular expression incorrectly marked a group as capturing.
For `http://example.com/#file.pdf`, the expected result is "file.pdf",
but instead "document.pdf" was returned.
This commit is contained in:
Rob Wu 2017-02-04 00:56:15 +01:00
parent 6f0cf8c4cb
commit 5fdc908f02

View File

@ -371,8 +371,8 @@ function noContextMenuHandler(e) {
* @return {String} Guessed PDF file name. * @return {String} Guessed PDF file name.
*/ */
function getPDFFileNameFromURL(url) { function getPDFFileNameFromURL(url) {
var reURI = /^(?:([^:]+:)?\/\/[^\/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/; var reURI = /^(?:(?:[^:]+:)?\/\/[^\/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/;
// SCHEME HOST 1.PATH 2.QUERY 3.REF // SCHEME HOST 1.PATH 2.QUERY 3.REF
// Pattern to get last matching NAME.pdf // Pattern to get last matching NAME.pdf
var reFilename = /[^\/?#=]+\.pdf\b(?!.*\.pdf\b)/i; var reFilename = /[^\/?#=]+\.pdf\b(?!.*\.pdf\b)/i;
var splitURI = reURI.exec(url); var splitURI = reURI.exec(url);