+ /* Check SetOptions invalid options handling */
+ for (i = 0; i < ARRAY_SIZE(invalid_fos); i++)
+ {
+ hr = IFileOpenDialog_SetOptions(pfod, invalid_fos[i]);
+ ok(hr == E_INVALIDARG, "got 0x%08x.\n", hr);
+ hr = IFileOpenDialog_GetOptions(pfod, &fdoptions);
+ ok(hr == S_OK, "got 0x%08x.\n", hr);
+ ok(fdoptions == (FOS_PATHMUSTEXIST | FOS_FILEMUSTEXIST | FOS_NOCHANGEDIR), "got %08x\n", fdoptions);
+
+ hr = IFileSaveDialog_SetOptions(pfsd, invalid_fos[i]);
+ ok(hr == E_INVALIDARG, "got 0x%08x.\n", hr);
+ hr = IFileSaveDialog_GetOptions(pfsd, &fdoptions);
+ ok(hr == S_OK, "got 0x%08x.\n", hr);
+ ok(fdoptions == (FOS_OVERWRITEPROMPT | FOS_NOREADONLYRETURN | FOS_PATHMUSTEXIST | FOS_NOCHANGEDIR),
+ "got %08x\n", fdoptions);
+ }
+