mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-17 23:35:34 +00:00
Bug 1155154 - Part 3 - Ignore file extension filters with characters that can be interpreted by the file picker. r=smaug
--HG-- extra : rebase_source : 3dfeafb7628689931ac54f00792c683670524d1f
This commit is contained in:
parent
95d74228ec
commit
5bf0f0bca6
@ -7212,6 +7212,10 @@ HTMLInputElement::SetFilePickerFiltersFromAccept(nsIFilePicker* filePicker)
|
||||
filterBundle->GetStringFromName(MOZ_UTF16("videoFilter"),
|
||||
getter_Copies(extensionListStr));
|
||||
} else if (token.First() == '.') {
|
||||
if (token.FindChar(';') >= 0 || token.FindChar('*') >= 0) {
|
||||
// Ignore this filter as it contains reserved characters
|
||||
continue;
|
||||
}
|
||||
extensionListStr = NS_LITERAL_STRING("*") + token;
|
||||
filterName = extensionListStr;
|
||||
atLeastOneFileExtensionFilter = true;
|
||||
|
@ -40,6 +40,7 @@
|
||||
<input id='x' type="file" accept=".xls, .xlsx">
|
||||
<input id='y' type="file" accept=".xlsx, .xls">
|
||||
<input id='z' type='file' accept="i/am,a,pathological,;,,,,test/case">
|
||||
<input id='A' type="file" accept=".xlsx, .xls*">
|
||||
<input id='mix-ref' type="file" accept="image/jpeg">
|
||||
<input id='mix' type="file" accept="image/jpeg,.jpg">
|
||||
<input id='hidden' hidden type='file'>
|
||||
@ -104,10 +105,11 @@ var testData = [["a", 1, MockFilePicker.filterImages, 1],
|
||||
["t", 4, "*.mp3; *.wav; *.flac", 1],
|
||||
["u", 3, "*.xls; *.xlsx", 1],
|
||||
["v", 3, "*.xlsx; *.xls", 1],
|
||||
["w", 1, "*.xlsx; .xls", 1],
|
||||
["w", 0, undefined, 0],
|
||||
["x", 3, "*.xls; *.xlsx", 1],
|
||||
["y", 3, "*.xlsx; *.xls", 1],
|
||||
["z", 0, undefined, 0],
|
||||
["A", 1, "*.xlsx", 1],
|
||||
// Note: mix and mix-ref tests extension lists are checked differently: see SimpleTest.executeSoon below
|
||||
["mix-ref", undefined, undefined, undefined],
|
||||
["mix", 1, undefined, 1],
|
||||
|
Loading…
Reference in New Issue
Block a user